0
点赞
收藏
分享

微信扫一扫

B.构造一个简单的数列(贪心)


B.构造一个简单的数列(贪心)

每次判是否满足互质,不满足加入到备选队列,然后遇到一个满足的后把队列的加到后面即可。

#include<bits/stdc++.h>

using namespace std;

int a[1000005];

int main(){
int n;
cin>>n;
while(n--){
int x,y;
cin>>x>>y;
a[1]=x;
int cnt=1;
queue<int>q;
for(int i=1;cnt<=y;i++){
if(i==x)continue;
if(__gcd(a[cnt],i)==1){
a[++cnt]=i;
while(!q.empty()){
a[++cnt]=q.front();
q.pop();
}
}
else{
q.push(i);
}
}
cout<<a[y]<<"\n";
}
return 0;
}


举报

相关推荐

0 条评论