摘要: 题目给定一个10000以内的数字,判断这个数字是否可以由几个连续的素数(例如:2,3,5,7...)相加得到,并且给出这个数可以有几组这样的解。输入:每行一个数字,0为退出输出:每行一个数字,对应输入的每个数字的解的组数。分析题目非常简单,很容易想到解题步骤。设输入为x,只要判断x是否可以表示为x=y(i)+y(i+1)+y(i+2)+...+y(i+m),即可,其中y为某一个素数。只要设置两个变量i,j,分别指向这个连续素数串的头和尾,不停的移动寻找解即可。不过首先需要得到10000以内的所有素数,如果每次输入都计算这些素数,没有必要而且可能会超时,所以先把所有素数计算出来并存储在一个数组中 阅读全文
posted @ 2013-03-10 22:21 handspeaker 阅读(2245) 评论(0) 推荐(0) 编辑