2013年11月16日
摘要: http://poj.org/problem?id=2739题意 :一个正整数能够表示为一个或多个连续素数和,给你一个正整数,让你求,有多少个这样的表示。例如:整数53有两种表示方法,5+7+11+13+17和53,41有三种表示方法,2+3+5+7+11+13,11+13+17还有41,而整数20没有这样的表示方法。思路 :因为取值到10000,所以先素数打表,然后枚举所有的表示方法中连续的素数里最小的那个即可。#include using namespace std;const int maxp = 2000,n = 10000 ;int prime[maxp],total = 0 ;bo 阅读全文
posted @ 2013-11-16 21:16 枫、 阅读(239) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/problemset/problem/300/A题意 :给你n个数字,让你分成3组,第一组各个数之积要小于0,第二组要大于0,第三组要等于0,符合要求的答案可能会有很多种,输出其中一种。思路 :表示一开始以为要把n个数分成3组,第一组里的数都大于0这样子,所以一直卡在这儿。。。。因为这个题也相当于special judge了吧,所以要找一个最不容易出错的输出,把n个数排序,最小的肯定是负的(题目保证至少有一个正确答案),所以直接把它分在第一组就行,然后如果然后最大的数分在第二组,当然了,如果最大的数也不大于0,这时候就要把第二个第三个放在一起,这样乘 阅读全文
posted @ 2013-11-16 19:54 枫、 阅读(242) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/problemset/problem/299/B题意 :这个题挺简单的,就是说这个姑娘不喜欢走有石头的扇形,所以给你一个k的值,代表她一次可以跳多少扇形。思路 :由于细节问题,那些循环的边界没弄好WA了几次,不过后来终于改对了。。。。#include#include#includeusing namespace std;const int maxn = 301100 ;char ch[maxn] ;int main(){ int n,k ; scanf("%d %d",&n,&k); int flag = 0,j; 阅读全文
posted @ 2013-11-16 19:48 枫、 阅读(308) 评论(0) 推荐(0) 编辑
摘要: http://codeforces.com/problemset/problem/299/A题意 :输入n个数,要求找出一个数能让其他所有的数整除,如果没有的话输出-1.有多个的话输出其中一个。思路 :表示一开始看错题了,卡了好久,后来想了想就去翻译了一下,才懂什么意思。。。-.-||。。其实就是要找的话如果有这样一个数就一定是最小的那个数,所以只需要判断一下最小的那个数能不能被后边的数整除就可以了。#include #include #include #include using namespace std ;int a[111000] ;int main(){ int n ; ... 阅读全文
posted @ 2013-11-16 19:23 枫、 阅读(319) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1013题意 : 给你一个数把它的每位数都加起来,如果和不是1位数,就继续把和的每一位数加起来,直到加到一位数为止 。思路 :这个题我一开始想的很简单,虽然它本身就是很简单的,因为题目中并没有给出n的大小,所以我没有在意,结果肯定就是WA,还有,其实这个题是有规律,有兴趣的可以写写看,当n等于0,1,2,3,4,5,6,7,8,9,10,11..................100,101,102,103时,root等于0,1,2,3,4,5,6,7,8,9,1,2................1,2,3, 阅读全文
posted @ 2013-11-16 14:02 枫、 阅读(158) 评论(0) 推荐(0) 编辑