CSES - Listan pienin Listalla on aluksi kokonaisluku $1$. Joka kierroksella poistat listalta pienimmän alkion $x$ ja lisäät listalle alkiot $2x$ ja $3x$. Mikä on listan pienin alkio $n$ kierroksen jälkeen? Voit olettaa, että $n$ on enintään $10^5$.

Esimerkiksi kun $n=5$, lista muuttuu näin:

$[1] \rightarrow [2,3] \rightarrow [3,4,6] \rightarrow [4,6,6,9] \rightarrow [6,6,9,8,12] \rightarrow [6,9,8,12,12,18]$

Tässä tapauksessa listan pienin alkio lopussa on $6$.

Python

Toteuta tiedostoon twothree.py funktio smallest, joka antaa vastauksen.
def smallest(n):
    # TODO

if __name__ == "__main__":
    print(smallest(1)) # 2
    print(smallest(5)) # 6
    print(smallest(123)) # 288
    print(smallest(55555)) # 663552
Java

Toteuta tiedostoon TwoThree.java metodi smallest, joka antaa vastauksen.
public class TwoThree {
    public int smallest(int n) {
        // TODO
    }

    public static void main(String[] args) {
        TwoThree t = new TwoThree();
        System.out.println(t.smallest(1)); // 2
        System.out.println(t.smallest(5)); // 6
        System.out.println(t.smallest(123)); // 288
        System.out.println(t.smallest(55555)); // 663552
    }
}