注意写法
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 5;
int min_num[N], T, n;
int fact_count[N];
int main() {
memset(min_num, 0x3f, sizeof(min_num));
for (int i = 1; i <= 1000000; i++) {
for (int j = i; j <= 1000000; j += i) {
fact_count[j]++;
}
min_num[fact_count[i]] = min(min_num[fact_count[i]], i);
}
scanf("%d", &T);
while (T--) {
scanf("%d", &n);
if (min_num[n] == 0x3f3f3f3f)
puts("-1");
else
printf("%d\n", min_num[n]);
}
return 0;
}