已解决
AcWing 4520:质数 ← BFS
来自网友在路上 171871提问 提问时间:2023-11-19 08:10:53阅读次数: 71
最佳答案 问答题库718位专家为你答疑解惑
【题目来源】
https://www.acwing.com/problem/content/4523/
【题目描述】
给定一个正整数 X,请你在 X 后面添加若干位数字(至少添加一位数字;添加的数不能有前导0),使得结果为质数,在这个前提下所得的结果应尽量小。
【输入格式】
第一行包含一个整数 T,表示共有 T 组测试数据。
每组数据占一行,包含一个整数 X。
【输出格式】
每组数据输出一行结果,一个整数,表示所得的满足条件的最小质数。
【数据范围】
1≤T≤100,
1≤X≤100。
【输入样例】
1
1
【输出样例】
11
【算法代码】
#include <bits/stdc++.h>
using namespace std;bool flag;bool is_prime(int x) {for(int i=2; i*i<=x; i++) {if(x%i==0) return false;}return true;
}void bfs(int x) {queue<int> q;for(int i=1; i<=9; i++) {q.push(x*10+i);}while(!flag) {int t=q.front();q.pop();if(is_prime(t)) {flag=true;cout<<t<<endl;}for(int i=1; i<=9; i++) {q.push(t*10+i);}}
}int main() {int T;cin>>T;while(T--) {int x;cin>>x;flag=false;bfs(x);}return 0;
}/*
in:
1
1out:
11
*/
【参考文献】
https://www.acwing.com/solution/content/126885/
https://www.acwing.com/solution/content/126522/
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"AcWing 4520:质数 ← BFS":http://eshow365.cn/6-39059-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!