Почему на компе не возникает никаких бесконечных циклов , а на сервере ошибка во времени выполнения? Да и числа вроде правильные выводит
package com.javarush.task.task20.task2025;
import java.util.ArrayList;
/*
Алгоритмы-числа
*/
public class Solution {
public static long[] getNumbers(long N) {
long[] result = null;
ArrayList<Long> list = new ArrayList<>();
for(long counter = 0; counter < N; counter++){
long sum = 0;
for(int i = 0; i < getLength(counter); i++){
sum += multipl(getValue(counter, i),getLength(counter));
}
if(sum == counter){
list.add(sum);
}
}
result = new long[list.size()];
int i = 0;
for (Long l: list) {
result[i++] = l;
}
return result;
}
private static long getValue(long value, int position){
long devide = 1;
for(int counter = 0; counter < getLength(value)-position; counter++){
devide = devide * 10;
}
return (value%devide) / (devide/10);
}
private static int getLength(long value){
int count = 0;
while (value > 0){
count++;
value = value/10;
}
return count;
}
private static long multipl(long value, int count){
long result = value;
for(int i = 1; i < count; i++){
result*=value;
}
return result;
}
public static void main(String[] args) {
long starTime = System.currentTimeMillis();
getNumbers(1000000);
System.out.println(" Time of the running = " + (System.currentTimeMillis() - starTime) / 100);
}
}