为什么n>16就会re?
#include<bits/stdc++.h>
using namespace std;
int a[100005];
int jc(int n) {
int sum = 1;
for (int i = 1; i <= n; i++) sum *= i;
return sum;
}
int main() {
int n, cnt = 0;
cin >> n;
while (1) {
cnt++;
int flag = 0;
a[cnt] = 1;
if (jc(cnt) <= n) a[jc(cnt)] = 1;
// cout << setw(3) << cnt << ":";
// for (int i = 1; i <= n; i++) cout << a[i] << ' ';
// cout << endl;
for (int i = 1; i <= n; i++) {
if (a[i] == 0) {
flag = 1;
break;
}
}
if (flag == 0) {
cout << cnt;
return 0;
}
}
}