新手守护
题目链接: 酷町堂:6592
题目描述 De**ion
酷町猫在和他的小伙伴们玩游戏,游戏规则是,给定范围n,查询次数为q次,每次查询后输出第k小的素数
输入描述 Input De**ion
第一行包含两个正整数 n,q分别表示查询的范围和查询的个数。
接下来 q行每行一个正整数 k,表示查询第 k 小的素数。
输出描述 Output De**ion
输出 q 行,每行一个正整数表示答案
样例输入 Sample Input
100 5 1 2 3 4 5
样例输出 Sample Output
2 3 5 7 11
数据范围及提示 Data Size & Hint
对于 20% 的数据:
1≤n≤10000
对于 70% 的数据:
10000000≤n≤100000000
对于 100% 的数据:
1≤n≤100000000
1≤q≤106
保证查询的素数不大于n。
#include<bits/stdc++.h>
using namespace std;
bool s(long long n){
if(n<=1) return false;
for(long long i=2; i<=sqrt(n); i++){
if(n%i==0){
return false;
}
}
return true;
}
long long n,q,k;
int main(){
cin>>n>>q;
for(long long i=1; i<=q; i++){
long long cnt=0;
cin>>k;
for(long long j=1; j<=n; j++){
if(s(j)){
cout<<j<<"\n";
break;
}
}
}
return 0;
}
求帮助!(不许水!)