题解:P12138 [蓝桥杯 2025 省 A] 寻找质数
题意简化
求第
题目链接
正解思路
首先,如果给定一个正整数
显然,因为
若
不妨
因为
即:
所以,如果
那么判断
那么,这个程序能否在规定时间内运行完毕呢?很简单,运行一下就好了——没有超时。
代码
#include <bits/stdc++.h>
using namespace std;
int n, p, cnt;
bool flag;
int main()
{
for(n = 2, flag; ; ++n) {
for(p = 2, flag = 0; p * p <= n; ++p) {
if(n % p == 0) {
flag = true;
break;
}
}
if(!flag) ++cnt;
if(cnt == 2025) {
cout << n;
return 0;
}
}
}