Files
Java/作业/刘航宇-day43/第三题/P2966.java
T
2025-12-28 21:05:06 +08:00

27 lines
811 B
Java

import java.util.*;
public class P2966 {
static long maxPrimeFactor(long n) {
if (n <= 1) return 1;
long max = -1;
while ((n & 1) == 0) { max = 2; n >>= 1; }
for (long i = 3; i * i <= n; i += 2) {
while (n % i == 0) { max = i; n /= i; }
}
if (n > 1) max = n;
return max;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
List<Long> nums = new ArrayList<>();
while (in.hasNextLong()) nums.add(in.nextLong());
StringBuilder sb = new StringBuilder();
for (int i = 0; i < nums.size(); i++) {
if (i > 0) sb.append(',');
sb.append(maxPrimeFactor(nums.get(i)));
}
System.out.println(sb.toString());
in.close();
}
}