// code Ġby Ġk y , Ġis Ġin Ġkotlin Ċ private Ġfun Ġread Ln () Ġ= Ġread Line () !! Ġ// Ġstring Ġline Ċ private Ġfun Ġread Int () Ġ= Ġread Ln (). toInt () Ġ// Ġsingle Ġint Ċ private Ġfun Ġread Strings () Ġ= Ġread Ln (). split (" Ġ") Ġ// Ġlist Ġof Ġstrings Ċ private Ġfun Ġread Ints () Ġ= Ġread Strings (). map Ġ{ Ġit . toInt () Ġ} Ġ// Ġlist Ġof Ġints Ċ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġval Ġn Ġ= Ġread Int () ĊĠĠĠ Ġval Ġalice Ġ= Ġread Ints (). to Sorted Set Ġ{ Ġa , Ġb Ġ-> Ġb Ġ- Ġa Ġ} ĊĠĠĠ Ġval Ġbob Ġ= Ġread Ints (). to Sorted Set Ġ{ Ġa , Ġb Ġ-> Ġb Ġ- Ġa Ġ} ĊĊĠĠĠ Ġvar Ġsum Ġ= Ġ 0 ĊĠĠĠ Ġwhile Ġ( alice . size Ġ!= Ġ 0 Ġ&& Ġbob . size Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġalice Card Ġ= Ġalice . first () ĊĠĠĠĠĠĠĠ Ġval Ġbob Card Ġ= Ġbob . first () ĊĊĠĠĠĠĠĠĠ Ġif Ġ( alice Card Ġ> Ġbob Card ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsum ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġalice . remove ( alice Card ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbob . remove ( bob Card ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprintln ( sum ) Ċ } Ċ