博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
USACO--1.5Superprime Rib
阅读量:2227 次
发布时间:2019-05-09

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

直接dfs穷举所有的数,然后再判断是不是素数,注意dfs时不同层的剪枝。

代码如下:

/*ID: 15674811LANG: C++TASK: sprime*/#include
#include
#include
#include
#include
#include
using namespace std;int n;bool is_prime(int n){ int k=sqrt(n)+0.5; for(int i=2;i<=k;i++) if(n%i==0) return 0; return 1;}bool prime[1000002];bool check(int n){ if(n<=1000000) { if(prime[n]) return 0; return 1; } return is_prime(n);}ofstream fout("sprime.out");ifstream fin("sprime.in");void dfs(int sum,int cur){ if(cur==n) { if(check(sum)) fout<
<
>n) { for(int i=2;i<=9;i++) { if(prime[i]) continue; dfs(i,1); } } return 0;}

转载地址:http://akrfb.baihongyu.com/

你可能感兴趣的文章
用 TensorFlow.js 在浏览器中训练神经网络
查看>>
cs230 深度学习 Lecture 2 编程作业: Logistic Regression with a Neural Network mindset
查看>>
梯度消失问题与如何选择激活函数
查看>>
为什么需要 Mini-batch 梯度下降,及 TensorFlow 应用举例
查看>>
为什么在优化算法中使用指数加权平均
查看>>
初探Java设计模式4:一文带你掌握JDK中的设计模式
查看>>
初探Java设计模式5:一文了解Spring涉及到的9种设计模式
查看>>
Java集合详解1:一文读懂ArrayList,Vector与Stack使用方法和实现原理
查看>>
Java集合详解2:一文读懂Queue和LinkedList
查看>>
Java集合详解3:一文读懂Iterator,fail-fast机制与比较器
查看>>
Java集合详解4:一文读懂HashMap和HashTable的区别以及常见面试题
查看>>
Java集合详解5:深入理解LinkedHashMap和LRU缓存
查看>>
Java集合详解6:这次,从头到尾带你解读Java中的红黑树
查看>>
Java集合详解8:Java集合类细节精讲,细节决定成败
查看>>
Java并发指南1:并发基础与Java多线程
查看>>
Java并发指南2:深入理解Java内存模型JMM
查看>>
Java并发指南5:JMM中的final关键字解析
查看>>
Java并发指南6:Java内存模型JMM总结
查看>>
Java并发指南7:JUC的核心类AQS详解
查看>>
Java并发指南8:AQS中的公平锁与非公平锁,Condtion
查看>>