import ĠY acht Category .* Ċ Ċ object ĠY acht Ġ{ ĊĊĠĠĠ Ġfun Ġsolve ( category : ĠY acht Category , Ġvar arg Ġd ices : ĠInt ): ĠInt Ġ= Ġwhen Ġ( category ) Ġ{ ĊĠĠĠĠĠĠĠ ĠY AC HT Ġ-> Ġif Ġ( d ices . distinct (). size Ġ== Ġ 1 ) Ġ 5 0 Ġelse Ġ 0 ĊĠĠĠĠĠĠĠ ĠON ES Ġ-> Ġd ices . filter Ġ{ Ġit Ġ== Ġ 1 Ġ}. sum () ĊĠĠĠĠĠĠĠ ĠT W OS Ġ-> Ġd ices . filter Ġ{ Ġit Ġ== Ġ 2 Ġ}. sum () ĊĠĠĠĠĠĠĠ ĠTH RE ES Ġ-> Ġd ices . filter Ġ{ Ġit Ġ== Ġ 3 Ġ}. sum () ĊĠĠĠĠĠĠĠ ĠFO UR S Ġ-> Ġd ices . filter Ġ{ Ġit Ġ== Ġ 4 Ġ}. sum () ĊĠĠĠĠĠĠĠ ĠF IV ES Ġ-> Ġd ices . filter Ġ{ Ġit Ġ== Ġ 5 Ġ}. sum () ĊĠĠĠĠĠĠĠ ĠS IX ES Ġ-> Ġd ices . filter Ġ{ Ġit Ġ== Ġ 6 Ġ}. sum () ĊĠĠĠĠĠĠĠ ĠFULL _ HO USE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcounts Ġ= Ġd ices . groupBy Ġ{ Ġit Ġ}. map Ġ{ Ġit . key Ġto Ġit . value . count () Ġ}. sorted By Descending Ġ{ Ġit . second Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( counts . size Ġ>= Ġ 2 Ġ&& Ġcounts [ 0 ]. second Ġ>= Ġ 3 Ġ&& Ġcounts [ 1 ]. second Ġ>= Ġ 2 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcounts [ 0 ]. first Ġ* Ġcounts [ 0 ]. second Ġ+ Ġcounts [ 1 ]. first Ġ* Ġcounts [ 1 ]. second ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠFO UR _ OF _ A _ KIND Ġ-> Ġd ices . groupBy Ġ{ Ġit Ġ}. filter Ġ{ Ġit . value . size Ġ>= Ġ 4 Ġ}. keys . sum By Ġ{ Ġit Ġ* Ġ 4 Ġ} ĊĠĠĠĠĠĠĠ ĠL IT TLE _ STR A IGHT Ġ-> Ġif Ġ(( 1 .. 5 ). all Ġ{ Ġd ices . contains ( it ) Ġ}) Ġ 3 0 Ġelse Ġ 0 ĊĠĠĠĠĠĠĠ ĠBIG _ STR A IGHT Ġ-> Ġif Ġ(( 2 .. 6 ). all Ġ{ Ġd ices . contains ( it ) Ġ}) Ġ 3 0 Ġelse Ġ 0 ĊĠĠĠĠĠĠĠ ĠC HO ICE Ġ-> Ġd ices . sum () ĊĠĠĠ Ġ} Ċ } Ċ