/** Ċ Ġ* Ġhttps :// leetcode . com / problems / simpl ified - fr actions / Ċ Ġ*/ Ċ class ĠSimpl ified Fraction Ġ{ ĊĠĠĠ Ġfun Ġsimplified Fr actions ( n : ĠInt ) Ġ: ĠList < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpossible Fr actions Ġ= Ġmutable ListOf < Pair < Int , Int >>() ĊĠĠĠĠĠĠĠ Ġfor ( i Ġin Ġ 1 Ġ.. n ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( j Ġin Ġ 1 Ġuntil Ġi ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpossible Fr actions . add ( Pair ( j , i )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġpossible Fr actions . filter Ġ{ Ġgcd ( it . first , it . second ) Ġ== Ġ 1 Ġ}. map Ġ{ Ġ"${ it . first }/${ it . second }" Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġgcd ( a : ĠInt , Ġb : ĠInt ) Ġ: ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġint One Ġ= Ġa ; ĊĠĠĠĠĠĠĠ Ġvar Ġint Two Ġ= Ġb ĊĠĠĠĠĠĠĠ Ġwhile ( int One Ġ% Ġint Two Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġr Ġ= Ġint One Ġ% Ġint Two ĊĠĠĠĠĠĠĠĠĠĠĠ Ġint One Ġ= Ġint Two ĊĠĠĠĠĠĠĠĠĠĠĠ Ġint Two Ġ= Ġr ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġint Two ĊĠĠĠ Ġ} Ċ }