博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ-3126-Prime Path
阅读量:6008 次
发布时间:2019-06-20

本文共 1265 字,大约阅读时间需要 4 分钟。

链接:https://vjudge.net/problem/POJ-3126

题意:

给两个四位数的素数a,b。每次可以改变a的一个值使其成为一个新的四位数素数。

求从a-b的最小操作次数

思路:

最大10000的素数打表,BFS即可。

代码:

#include 
#include
#include
using namespace std;typedef long long LL;const int MAXN = 10000;int Primes[MAXN];int vis[MAXN];int vis_Primes[MAXN];int Max;struct Node{ int _value; int _step; Node(int value,int step) { _value = value; _step = step; }};void init(){ //168 Primes[168-MAXN] > 999 int pos = 0; memset(vis,0,sizeof(vis)); for (int i = 2;i
< pos&&i*Primes[j] < MAXN;j++) { vis[i*Primes[j]] = 1; if (i%Primes[j] == 0) break; } } Max = pos;}int main(){ init(); int t,a,b; scanf("%d",&t); while (t--) { memset(vis_Primes,0,sizeof(vis_Primes)); scanf("%d%d",&a,&b); queue
que; que.push(Node(a,0)); vis_Primes[a] = 1; while (!que.empty()) { int now_value = que.front()._value; int now_step = que.front()._step; if (now_value == b) break; for (int i = 168;i

  

转载于:https://www.cnblogs.com/YDDDD/p/10268980.html

你可能感兴趣的文章
如何使用 Docker 快速配置数据科学开发环境?
查看>>
《ELK Stack权威指南(第2版)》一3.6 Java日志
查看>>
C++流的streambuf详解及TCP流的实现
查看>>
《WebGL入门指南》——第1章,第1.4节本章小结
查看>>
Angular从零到一1.6 引导过程
查看>>
《iOS 6核心开发手册(第4版)》——1.1节触摸
查看>>
《C#多线程编程实战(原书第2版)》——2.5 使用AutoResetEvent类
查看>>
《量化金融R语言初级教程》一2.5 协方差矩阵中的噪声
查看>>
并发网每月TOP10文章
查看>>
黑客究竟用什么姿势偷走了你的钱? | 硬创公开课
查看>>
超越Hadoop的大数据分析之第一章介绍:为什么超越Hadoop Map-Reduce
查看>>
暗渡陈仓:用低消耗设备进行破解和渗透测试3.6 本章附录:深入分析安装脚本...
查看>>
自己动手构造编译系统:编译、汇编与链接2.5 链接程序的设计
查看>>
Serverless日志处理挑战与方案
查看>>
Apache Common Math Stat
查看>>
Intellij idea配置scala开发环境
查看>>
《C++语言基础》实践项目——运算符重载(一)
查看>>
ios9 HTTPS
查看>>
天猫技术全面打造『身临其境』的消费者交互体验
查看>>
[实践] Android5.1.1源码 - 让某个APP以解释执行模式运行
查看>>