public class Solution { public ArrayList<Integer> allFactors(int A) { ArrayList<Integer> factors = new ArrayList<>(); ArrayList<Integer> aux = new ArrayList<>(); for (int i = 1; i <= Math.sqrt(A); i ++) { if (A % i == 0) { if (A / i == i) { factors.add(i); } else { factors.add(i); aux.add(A / i); } } } Collections.reverse(aux); factors.addAll(aux); return factors; } }