package Ġdays Ċ Ċ import ĠBase Solution Ċ Ċ class ĠDay 6 Solution ( input List : ĠList < String >) Ġ: ĠBase Solution ( input List ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlan tern List Ġ= Ġinput List . first (). split ("," ). map Ġ{ Ġit . toInt () Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġpart 1 () Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġgener ations Ġ= Ġlan tern List ĊĠĠĠĠĠĠĠ Ġ( 1 .. 8 0 ). forEach Ġ{ Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcounter Times Ġ= Ġgener ations . count Ġ{ Ġit Ġ== Ġ 0 Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgener ations Ġ= Ġgener ations . map Ġ{ Ġif Ġ( it Ġ== Ġ 0 ) Ġ 6 Ġelse Ġit Ġ- Ġ 1 Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgener ations Ġ= Ġgener ations Ġ+ ĠList ( counter Times ) Ġ{ Ġ 8 Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprintln ( gener ations . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġpart 2 () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlan tern Counter Ġ= ĠMutable List ( 9 ){ Ġ 0 L Ġ} ĊĠĠĠĠĠĠĠ Ġlan tern List . forEach Ġ{ Ġlan tern Counter [ it ] Ġ+= Ġ 1 L Ġ} ĊĠĠĠĠĠĠĠ Ġ( 1 .. 2 5 6 ). forEach Ġ{ Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfish To Generate Ġ= Ġlan tern Counter . first () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( 0 .. lan tern Counter . size Ġ- 2 ). forEach Ġ{ Ġlan tern Counter [ it ] Ġ= Ġlan tern Counter [ it + 1 ] Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlan tern Counter [ 6 ] Ġ+= Ġfish To Generate ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlan tern Counter [ 8 ] Ġ= Ġfish To Generate ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprintln ( lan tern Counter . sum ()) ĊĠĠĠ Ġ} Ċ Ċ } Ċ