/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 Ġby ĠT odd ĠG ins berg Ċ Ġ*/ Ċ Ċ /** Ċ Ġ* ĠAd vent Ġof ĠCode Ġ 2 0 2 0 , ĠDay Ġ 5 Ġ- ĠBinary ĠBo arding Ċ Ġ* ĠProblem ĠDescription : Ġhttp :// ad vent of code . com / 2 0 2 0 / day / 5 Ċ Ġ* ĠBlog ĠPost / Comment ary : Ġhttps :// tod d . gin s berg . com / post / ad vent - of - code / 2 0 2 0 / day 5 / Ċ Ġ*/ Ċ package Ġcom . gin s berg . ad vent 2 0 2 0 Ċ Ċ class ĠDay 0 5 ( private Ġval Ġinput : ĠList < String >) Ġ{ ĊĊĠĠĠ Ġfun Ġsolve Part 1 (): ĠInt Ġ= ĊĠĠĠĠĠĠĠ Ġinput . map Ġ{ Ġseat Id ( it ) Ġ}. max OrNull () Ġ?: Ġthrow ĠIllegalStateException (" No Ġanswer ") ĊĊĠĠĠ Ġfun Ġsolve Part 2 (): ĠInt Ġ= ĊĠĠĠĠĠĠĠ Ġinput . map Ġ{ Ġseat Id ( it ) Ġ}. sorted (). zip With Next (). first Ġ{ Ġit . second Ġ- Ġit . first Ġ!= Ġ 1 Ġ}. first Ġ+ Ġ 1 ĊĊĠĠĠ Ġprivate Ġfun Ġseat Id ( pattern : ĠString ): ĠInt Ġ= ĊĠĠĠĠĠĠĠ Ġpattern . map Ġ{ Ġif Ġ( it Ġin Ġset Of (' B ', Ġ' R ')) Ġ' 1 ' Ġelse Ġ' 0 ' Ġ}. join ToString (" "). toInt ( 2 ) Ċ } ĊĊĊ