package Ġcom . nc ort i . a oc 2 0 2 1 Ċ Ċ import Ġkotlin . math . abs Ċ import Ġkotlin . math . min Ċ Ċ object ĠExercise 0 7 Ġ{ ĊĊĠĠĠ Ġfun Ġpart 1 (): ĠInt Ġ= ĊĠĠĠĠĠĠĠ Ġget Input As Test (" 0 7 ") Ġ{ Ġsplit (",") Ġ}. map ( String :: toInt ). let Ġ{ Ġinput Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinput . min Of Ġ{ Ġelement Ġ-> Ġinput . sum Of Ġ{ Ġabs ( it Ġ- Ġelement ) Ġ} Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġpart 2 (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinput Ġ= Ġget Input As Test (" 0 7 ") Ġ{ Ġsplit (",") Ġ}. map ( String :: toInt ) ĊĠĠĠĠĠĠĠ Ġvar Ġmin Cost Ġ= ĠInt . MAX _ VALUE ĊĠĠĠĠĠĠĠ Ġfor Ġ( element Ġin Ġinput . min OrNull () !! .. input . max OrNull () !! ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinput . sum Of Ġ{ Ġ(( abs ( it Ġ- Ġelement ) Ġ+ Ġ 1 ) Ġ* Ġabs ( it Ġ- Ġelement )) Ġ/ Ġ 2 Ġ}. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmin Cost Ġ= Ġmin ( it , Ġmin Cost ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġmin Cost ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġprintln ( Exercise 0 7 . part 1 ()) ĊĠĠĠ Ġprintln ( Exercise 0 7 . part 2 ()) Ċ } Ċ