/* Ċ Ġ* ĠCreated Ġby ĠN aa atan Ġon Ġ 2 0 2 1 / 0 9 / 0 4 Ġ 1 7 : 4 7 Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 1 Ġ. ĠAll Ġrights Ġreserved . Ċ Ġ* ĠLast Ġmodified Ġ 2 0 2 1 / 0 9 / 0 4 Ġ 1 7 : 4 7 Ċ Ġ*/ Ċ Ċ package Ġn ay . lib . kt ex Ċ Ċ fun Ġ< E > ĠList < E >. divide ( size : ĠInt ): ĠList < List < E >> Ġ{ ĊĠĠĠ Ġif Ġ( isEmpty () Ġ|| Ġsize Ġ<= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmutable ListOf () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġblock Ġ= Ġthis . size Ġ/ Ġsize Ġ+ Ġ( if Ġ( this . size Ġ% Ġsize Ġ> Ġ 0 ) ĠĠ 1 Ġelse Ġ 0 ) ĊĊĠĠĠ Ġval Ġret Ġ: ĠMutable List < List < E >> Ġ= Ġmutable ListOf () ĊĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġblock ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstart Ġ= Ġi Ġ* Ġsize ĊĠĠĠĠĠĠĠ Ġval Ġend Ġ= Ġ( start Ġ+ Ġsize ). coerce At Most ( this . size ) ĊĠĠĠĠĠĠĠ Ġval Ġsub List Ġ= Ġthis . sub List ( start , Ġend ) ĊĠĠĠĠĠĠĠ Ġret . add ( sub List ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġret Ċ }