题目:对于至少有4个因子的整数n,若其满足任一两个因子之差大于等于x,求最小的整数n
思路:对于整数n,1和n本身为其两个因子,只需找到第一个大于1+x的质数l,和第一个大于l+x的质数r,其乘积r*l即为答案
int T; cin >> T;
for (int t = 0; t < T; ++t) {
int x; cin >> x;
int l = 1 + x;
for (; l < INT_MAX; ++l) {
bool flag = true;
for (int i = 2; i <= l - 1; ++i) {
if (l % i == 0) {
flag = false;
break;
}
}
if (flag) {
break;
}
}
int r = l + x;
for (; r < INT_MAX; ++r) {
bool flag = true;
for (int i = 2; i <= r - 1; ++i) {
if (r % i == 0) {
flag = false;
break;
}
}
if (flag) {
break;
}
}
cout << l * r << endl;
}