import java.util.ArrayList;
import java.util.List;

class AchaPrimos {

    public static boolean primo(int num) {
        for (int i = 2; i < num; i++) {
            if (num % i == 0) return false;
        }

        return true;
    }

    public static List<Integer> fatorar(int x) {
       List<Integer> numeros = new ArrayList<Integer>();
       int aux = x, s = (int) Math.sqrt(x);

       for (int i = 2; i <= s; i++) {
            if (primo(i)) {
                while (aux % i == 0) {
                    aux /= i;
                    s = (int) Math.sqrt(aux);
                    numeros.add(i);
                }
            }
       }

       if (aux != 1 || numeros.isEmpty()) numeros.add(aux);
       return numeros;
    }

    public static void main(String[] args) {
        System.out.println("36: " + fatorar(36));
        System.out.println("60: " + fatorar(60));
        System.out.println("120: " + fatorar(120));
        System.out.println("144: " + fatorar(144));
        System.out.println("97: " + fatorar(97));
        System.out.println("128: " + fatorar(128));
        System.out.println("15: " + fatorar(15));
        System.out.println("2: " + fatorar(2));
        System.out.println("7: " + fatorar(7));
        System.out.println("1: " + fatorar(1));
        System.out.println("0: " + fatorar(0));
    }
}