1.2.2一个数可以有多少种用连续素数之和表示POJ 2739
#include <iostream>
using namespace std;
const int maxp=2000,n=10000;
int prime[maxp],total=0;
bool isprime(int k)//bool函数用来求素数
{for(int i=0;i<total;i++)if(k%prime[i]==0)//判断素数的一种方法(用这个数对数组当中所有的 素数 进行取余;return false;return true;
}
int main()
{for(int i=2;i<n;i++)if(isprime(i))prime[total++]=i;//total++是先用后加。此处之前的代码是把2~n之间的素数全部都存储到prime[total]数组中。prime[total]=n+1;int m;cin>>m;while(m){int ans=0;//用于计算个数for(int i=0;prime[i]<=m;i++)//外层循环用来枚举所有的可能性{int cnt=0;//求和for(int j=i;j<total,cnt<m;j++)//内循环用来判断所求和的大小是否符合cnt+=prime[j];if(cnt==m)++ans;}cout<<ans<<endl;cin>>m;}return 0;
}
#include <iostream>
#include <stdlib.h>
#include <cstring>
#include <iomanip>
using namespace std;
const int maxn = 10000;
int prime[maxn+1];
void getPrime(){memset(prime,0,sizeof(prime));for(int i=2; i<=maxn;++i){if(!prime[i]) prime[++prime[0]] = i;for(int j= 1; j<=prime[0] && i*prime[j]<=maxn;++j){prime[i*prime[j]] = 1 ;if(i%prime[j] == 0)break;}}
}
int main(){int m;getPrime();while(cin>>m,m){int cnt = 0;for(int i=1; prime[i]<=m;++i){int ans = 0;for(int j= i ;j<=prime[0]&&ans<m ;++j){//for(int j= i ;j<=prime[0], ans<m ;++j)ans += prime[j];if(ans == m){cnt++;}}}cout<<cnt<<endl;}return 0;
}
// 2020.3.29更
1.2.2一个数可以有多少种用连续素数之和表示POJ 2739相关推荐
- 1.2.2一个数可以有多少种用连续素数之和表示
#include <iostream> using namespace std; const int maxp=2000,n=10000; int prime[maxp],total=0; ...
- 求C n m(从n个数中选m个数,有多少种组合?问题)暴力—递归——回归数学公式,三种方法,层层优化!
文章将以代码+解析(简单)的方式进行,欢迎大家的阅读! 首先,任何一个问题都是有来源的,所以请先看题(我遇到的): 暴力解法(我第一次的想法) 代码如下: #include <stdio.h&g ...
- n个数分为m堆有多少种分法(青岛理工邀请赛)动态规划
有n个相同的数,把它分为m堆,有多少种分法. 样例:7 3 输出:4 注:(1,1,5)(1,5,1) (5,1,1)是一种分法. //算是看了网上很多的算法,这里只是做一个解释 //网上关于这个的算 ...
- POJ 2785 有多少种4个数相加等于0的方案(二分查找 or hash)
文章目录 1.二分查找法 1.1 思路: 1.2 AC代码 2.hash查找法 2.1 思路: 2.2 Wrong Answer 代码 2.3 Time Limit Exceeded 代码 2.4 偷 ...
- 有n个数,从中取m个数,可以重复取,有多少种组合
题目: 有n个数,从中取m个数,可以重复取,有多少种组合是123,321,312,321,213,123是一种组合.比如输入3,3,有10种,分别为,111,112,113,122,123,133,2 ...
- 8个数,分成四组,每两个为一组,有多少种分法?
class Program{static void Main(string[] args){List<int> list = new List<int>() { 1, 2, 3 ...
- [递归]一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
这题是用C写的~ 在牛客上半天找不着ACM模式,练习模式里只有核心代码模式 这样用C语言编译器就不能自定义函数啊,不鸡肋吗??? 解决方法:在核心代码模式下用C++编译器(反正C++完全兼容C的不是吗 ...
- 1 2 5组合100,有多少种方法
问题描述:用随意多个1 2 5三个数字的组合,使其值为100,有多少种组合方法? 基础解法:穷举法,1穷举100次,2穷举50次,5穷举20次,这种方法总共穷举的次数为100*50*20=100 00 ...
- 一个简单的线性拟合问题,到底有多少种做法
一个简单的线性拟合问题,到底有多少种做法 相信大家都做过线性拟合问题吧,其实就是给很多点,来求线性方程的斜率和截距.早在高中数学就有这类问题,我记得很清楚,如果出现在试卷中,一般出现在解答题的第二题左 ...
最新文章
- 如何用 OpenGL 绘制雪花?
- linux mint 19 内核4.9,检查Linux Mint 19系统版本号和代号的方法
- JavaEE(14) - JPA关联映射
- 大牛告诉你,只有突破程序员思维,才不会沦为码农!
- JS基础篇之作用域、执行上下文、this、闭包
- Linux 64位 CentOS下安装 Docker 容器,启动、停止
- unittest模式切换成普通模式
- 英特尔的务实创新之路:实在做技术,赋能开发者 | InfoQ推荐
- 微软封闭服务器切换,执行服务器切换:Exchange 2013 帮助 | Microsoft Docs
- oracle12c 删除pdb用户,oracle 12c pdb测试:创建、开关、删除
- swoole中退出、异常与错误的处理笔记
- 改造Python中文拼音扩展库pypinyin补充自定义声母全过程
- 京东商品信息及其价格爬虫
- python通过ntohl和htonl等函数实现主机字节序和网络字节序相互转换
- 【Kettle】如何输出固定格式报表
- select函数fdwrite用法_通俗易懂的学会:SQL窗口函数
- Python 第六章 面向对象编程(MD模式)
- 加不了buff的BuffX,还能让年轻人买单多久?
- 环信即时通信聊天理解
- 粉丝文化:抖音广告短视频美妆营销中,男明星比女明星更带货?