import java.util.stream.IntStream;
public class Main {
public static void main(String[] args) {
int maxNumber = findNumberWithMaxDivisorSum();
System.out.println("Натуральное число с максимальной суммой делителей: " + maxNumber);
}
public static int findNumberWithMaxDivisorSum() {
int maxNumber = 0, maxSum = 0;
for (int i = 1; i <= 10000; i++) {
int currentSum = getDivisorSum(i);
if (currentSum > maxSum) {
maxSum = currentSum;
maxNumber = i;
}
}
return maxNumber;
}
public static int getDivisorSum(int number) {
return IntStream.rangeClosed(1, (int) Math.sqrt(number))
.filter(i -> number % i == 0)
.flatMap(i -> IntStream.of(i, number / i))
.distinct()
.sum();
}
}
Напишите класс, который находит натуральное число от 1 до 10000 с максимальной суммой делителей