все правильно выводит! но валидатор не принимает
package com.javarush.task.task20.task2025;
import java.util.*;
/*
Алгоритмы-числа
*/
public class Solution {
public static long[] getNumbers(long N) {
List<Long> list = new ArrayList<Long>();
for (long i = N - 1; i > 0; i--) {
long n = 0;
for (long j = i; j > 0; j /= 10) {
n += power(j % 10, String.valueOf(i).length());
}
if (n == i)
list.add(n);
}
Collections.sort(list);
long[] result = new long[list.size()];
for (int i = 0; i < list.size(); i++)
result[i] = list.get(i);
return result;
}
public static long power(long a, long b) {
long h = 1;
for (int i = 0; i < b; i++)
h = h*a;
return h;
}
public static void main(String[] args) {
long a = System.currentTimeMillis();
System.out.println(Arrays.toString(getNumbers(1000)));
long b = System.currentTimeMillis();
System.out.println("memory " + (Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()) / (8 * 1024));
System.out.println("time = " + (b - a) / 1000);
a = System.currentTimeMillis();
System.out.println(Arrays.toString(getNumbers(1000000)));
b = System.currentTimeMillis();
System.out.println("memory " + (Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()) / (8 * 1024));
System.out.println("time = " + (b - a) / 1000);
}
}