package Ġfive čĊč Ċ // ĠDay Ġ 2 č Ċ class ĠInventory Management Challenge Ġ{ čĊĠĠĠ Ġfun Ġchecksum ( input : ĠList < String >): ĠInt Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġtw os Ġ= Ġinput . count Ġ{ Ġhas Occ urrences ( it , Ġ 2 ) Ġ} čĊĠĠĠĠĠĠĠ Ġval Ġth re es Ġ= Ġinput . count Ġ{ Ġhas Occ urrences ( it , Ġ 3 ) Ġ} čĊĠĠĠĠĠĠĠ Ġreturn Ġtw os Ġ* Ġth re es čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġprivate Ġfun Ġhas Occ urrences ( id : ĠString , ĠnumberOf Occ urrences : ĠInt ): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġchars : ĠList < Char > Ġ= Ġid . toCharArray (). toList () čĊĠĠĠĠĠĠĠ Ġval Ġgroup Ġ= Ġchars . grouping By Ġ{ Ġit Ġ}. each Count () čĊĠĠĠĠĠĠĠ Ġreturn Ġgroup . contains Value ( numberOf Occ urrences ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġfun Ġcommon Letters ( input : ĠList < String >): ĠString Ġ{ čĊĠĠĠĠĠĠĠ Ġfor Ġ(( n , Ġword ) Ġin Ġinput . with Index ()) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġn Ġ+ Ġ 1 Ġuntil Ġinput . size ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġsame Chars ( word , Ġinput [ i ]) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result . size Ġ== Ġword . length Ġ- Ġ 1 ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresult . join ToString ("") čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠ Ġreturn Ġ" ERROR !" čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġprivate Ġfun Ġsame Chars ( a : ĠString , Ġb : ĠString ): ĠList < Char > Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġa . zip ( b ). filter Ġ{ Ġit . first Ġ== Ġit . second Ġ}. map Ġ{ Ġit . first Ġ} čĊĠĠĠ Ġ} č Ċ }