题解 | #小苯的数字权值#
小苯的数字权值
https://www.nowcoder.com/practice/aeacca655eec45999a6dc4d998dfd4a5
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = 1; n = scanner.nextInt(); while (n-- > 0) { solve(scanner); } } public static void solve(Scanner scanner) { int x = scanner.nextInt(); int maxx = 0, sum = 1; for (int i = 2; i * i <= x; i++) { if (x % i == 0) { int cnt = 0; while (x % i == 0) { x /= i; cnt++; } sum *= cnt + 1; maxx = Math.max(maxx, cnt * 2); } } if (x > 1) { maxx = Math.max(maxx, 2); sum *= 2; } System.out.println(Math.max(maxx, sum)); } }