2319__1.5.3 Superprime Rib 特殊的质数肋骨
Description
农民约翰母牛总是产生最好的肋骨。 你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们。 农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数字都组成一个质数,举例来说: 7 3 3 1 全部肋骨上的数字 7331是质数;三根肋骨 733是质数;二根肋骨 73 是质数;当然,最后一根肋骨 7 也是质数。 7331 被叫做长度 4 的特殊质数。 写一个程序对给定的肋骨的数目 N (1<=N<=8),求出所有的特殊质数。 数字1不被看作一个质数。
Input
单独的一行包含N。
Output
按顺序输出长度为 N 的特殊质数,每行一个。
Sample Input
4
Sample Output
2333
2339
2393
2399
2939
3119
3137
3733
3739
3793
3797
5939
7193
7331
7333
7393 分析:还是没有完全理解到递归的思想,想不到递归那去。想了很久也没搞定,在网上找了题解,所以这题用递归。不管是几位数,它的第一个数一定是,2,3,5,7,确定了第一个数,第二个数之后的数就在(1,9)之间遍历,如果是素数并且位数等于所给的位数就输出。终止条件就是满足条件的位数等于所给的位数。
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int n;
int prime(int m)//判断是否为素数数
{
int k,i;
k=sqrt(m);
for(i=;i<=k;i++)
{
if(m%i==)
break;
}
if(i==k+)
return ;
return ; }
void judge(int primer,int pos)//primer是质数,pos是位数
{
if(pos==)
{
judge(,);
judge(,);
judge(,);
judge(,);//当只有一位的时候
}
else
{
for(int i=;i<=;i++)
{
if(prime(primer*+i)==)//构造位数为pos+1的数
{
if(pos==n)
printf("%d\n",primer*+i);//如果位数等于所给的位数
else
{
judge(primer*+i,pos+);//否则,位数+1,继续递归下去;
}
}
}
}
}
int main()
{
while(~scanf("%d",&n))
{
if(n==)
{
printf("2\n3\n5\n7\n");//当位数为1的时候直接输出
}
else
{
judge(,);//否则进入judge,从位数pos=1开始找
}
}
return ;
}
2319__1.5.3 Superprime Rib 特殊的质数肋骨的更多相关文章
- 洛谷P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib
P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 284通过 425提交 题目提供者该用户不存在 标签USACO 难度普及- 提交 讨论 题解 最新讨论 超时怎么办? ...
- 洛谷 P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib
P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 题目描述 农民约翰的母牛总是产生最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们.农民约翰确定他卖给 ...
- 洛谷P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 使用四种算法
洛谷P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 水题一道…… 题目描述 农民约翰的母牛总是产生最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们. ...
- P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib (数论—素数 + DFS)
这大概是我写的第一个DFS 题目描述 农民约翰的母牛总是产生最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们.农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨, ...
- P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib
题目描述 农民约翰的母牛总是产生最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们.农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数字都组 ...
- [Swust OJ 799]--Superprime Rib(DFS)
题目链接:http://acm.swust.edu.cn/problem/799/ Time limit(ms): 1000 Memory limit(kb): 10000 Description ...
- USACO 1.5 Superprime Rib
Superprime Rib Butchering Farmer John's cows always yields the best prime rib. You can tell prime ri ...
- USACO Superprime Rib
洛谷 P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 洛谷传送门 JDOJ 1673: Superprime Rib JDOJ传送门 题目描述 农民约翰的母牛总是产生最好 ...
- 【USACO 1.5.3】特殊的质数肋骨
[题目描述]农民约翰的母牛总是生产出最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们. 农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数 ...
随机推荐
- checked和stop()的讲解
input:cheacked (属性选择器): checked 选中复选框 $("p").stop(ture); 代码的翻译:(参数)布尔值 p身上所有的动画都停止了 加不加tr ...
- BGP属性+13条选路原则(转载)
原文:http://blog.sina.com.cn/s/blog_be409c2f0102x6sg.html BGP(Border Gateway Protocol)边界网关协议 BGP(Borde ...
- Java里数组的三种初始化方式
静态初始化 除了用new关键字来产生数组以外,还可以直接在定义数组的同时就为数组元素分配空间并赋值. // 静态初始化 int[] iStaticArr = { 5, 2, 0 }; LOLHero[ ...
- base_基础
目录 A B C D E F G H I J K L M N S: Sqlite: 1;orhanobut/hawk; A: Adapter: 图片处理 Android中自定义布局中加载图片Bitma ...
- [UE4]UniformGirdPanel
- PyCharm的模板设置
在File—settings—Editor—File and Code Templates—Python script 脚本里添加 编辑内容 (a)shebang行 #!/usr/bin/python ...
- c#线程间传递参数
线程操作主要用到Thread类,他是定义在System.Threading.dll下.使用时需要添加这一个引用.该类提供给我们四个重载的构造函数(以下引自msdn). Thread (P ...
- CSS便捷开发小工具汇总
1.Prefix free 可以帮助开发者省去编写各种CSS3属性前缀的工作,只需要在页面中引入prefixfree.js即可. 2. Normalize 是一个CSS Reset工具, 相比传统的R ...
- Anatomy of a Program in Memory.剖析程序的内存布局
原文标题:Anatomy of a Program in Memory 原文地址:http://duartes.org/gustavo/blog/ [注:本人水平有限,只好挑一些国外高手的精彩文章翻译 ...
- jquery鼠标放上去显示悬浮层即弹出定位的div层
<div><a id="a1" onmouseover="javascript:show('a1','div1');" onmouseout= ...