package Ġcom . ray son o . h fu . my application Ċ Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Test Ċ import Ġjava . io . File Ċ Ċ class ĠDay 1 Ġ{ ĊĊĠĠĠ Ġ// Ġhttps :// ad vent of code . com / 2 0 2 1 / day / 1 ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` solution Ġ 1 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinput : ĠList < Int > Ġ= ĠFile (" src / test / Day 1 Input . txt "). read Lines (). map Ġ{ Ġit . toInt () Ġ} ĊĊĠĠĠĠĠĠĠ Ġvar Ġcount Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġfor Ġ( index Ġin Ġ 0 Ġuntil Ġinput . size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ 0 ) Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcurrent Ġ= Ġinput [ index ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġprevious Ġ= Ġinput [ index Ġ- Ġ 1 ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( current Ġ> Ġprevious ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( count , Ġ 7 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` solution Ġ 2 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinput : ĠList < Int > Ġ= ĠFile (" src / test / Day 1 Input . txt "). read Lines (). map Ġ{ Ġit . toInt () Ġ} ĊĊĠĠĠĠĠĠĠ Ġvar Ġcount Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġfor Ġ(( index , Ġcurrent ) Ġin Ġinput . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ 0 ) Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġprevious Ġ= Ġinput [ index Ġ- Ġ 1 ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( current Ġ> Ġprevious ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( count , Ġ 7 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` solution Ġ 3 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinput : ĠList < Int > Ġ= ĠFile (" src / test / Day 1 Input . txt "). read Lines (). map Ġ{ Ġit . toInt () Ġ} ĊĊĠĠĠĠĠĠĠ Ġvar Ġcount Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġinput . forEach Indexed Ġ{ Ġindex , Ġcurrent Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( index Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġprevious Ġ= Ġinput [ index Ġ- Ġ 1 ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( current Ġ> Ġprevious ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( count , Ġ 7 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` solution Ġ 4 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinput : ĠList < Int > Ġ= ĠFile (" src / test / Day 1 Input . txt "). read Lines (). map Ġ{ Ġit . toInt () Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġpairs : ĠList < Pair < Int , ĠInt >> Ġ= Ġinput . map Indexed NotNull Ġ{ Ġindex , Ġcurrent Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( index Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPair ( input [ index Ġ- Ġ 1 ], Ġcurrent ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġcount : ĠInt Ġ= Ġpairs . count Ġ{ Ġ( first , Ġsecond ) Ġ-> Ġfirst Ġ< Ġsecond Ġ} ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( count , Ġ 7 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` solution Ġ 5 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcount Ġ= ĠFile (" src / test / Day 1 Input . txt ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. read Lines () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . toInt () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. zip With Next () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. count Ġ{ Ġ( first , Ġsecond ) Ġ-> Ġfirst Ġ< Ġsecond Ġ} ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( count , Ġ 7 ) ĊĠĠĠ Ġ} Ċ } Ċ