UVa 1210 连续素数之和
https://vjudge.net/problem/UVA-1210
题意:
输入整数n,有多少种方案可以把n写成若干个连续素数之和?
思路:
先素数打表,然后求个前缀和。
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<queue>
using namespace std;
typedef long long ll; const int maxn=+; int n; int primes[maxn];
ll sum[maxn];
int vis[maxn];
int cnt; void get_prime()
{
cnt=;
int m = sqrt(maxn + 0.5);
memset(vis, , sizeof(vis));
for (int i = ; i < m;i++)
{
if(!vis[i])
{
for(int j=i*i;j<maxn;j+=i)
vis[j]=;
}
}
sum[]=;
for(int i=;i<=maxn;i++)
{
if(!vis[i])
{
primes[++cnt]=i;
sum[cnt]=sum[cnt-]+i;
}
}
} int main()
{
//freopen("D:\\input.txt", "r", stdin);
get_prime();
while(cin>>n && n)
{
int ans=;
for(int i=;i<=cnt;i++)
for(int j=;j<i;j++)
if(sum[i]-sum[j]==n) ans++;
cout<<ans<<endl;
}
return ;
}
UVa 1210 连续素数之和的更多相关文章
- UVa 1210 (高效算法设计) Sum of Consecutive Prime Numbers
题意: 给出n,求把n写成若干个连续素数之和的方案数. 分析: 这道题非常类似大白书P48的例21,上面详细讲了如何从一个O(n3)的算法优化到O(n2)再到O(nlogn),最后到O(n)的神一般的 ...
- 【编程实践】连续正整数之和(华东师范大学OJ-3025)
题目描述:一个正整数有可能可以被表示为 n(n>=2) 个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 请编写程序,根据输入的任何一个正整数,找出符合这种要求的 ...
- hdu1003 Max Sum【最大连续子序列之和】
题目链接:https://vjudge.net/problem/HDU-1003 题目大意:给出一段序列,求出最大连续子序列之和,以及给出这段子序列的起点和终点. 解题思路:最长连续子序列之和问题其实 ...
- 一个正整数表示为n个连续正整数之和(第1届第2题)
题目要求 问题描述:一个正整数有可能可以被表示为 n(n>=2) 个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 编写程序,根据输入的任何一个正整数,找出符合这 ...
- 【C语言】输入一个整数N,求N以内的素数之和
[C语言]输入一个整数N,求N以内的素数之和 /* ========================================================================== ...
- [LeetCode] 829. Consecutive Numbers Sum 连续数字之和
Given a positive integer N, how many ways can we write it as a sum of consecutive positive integers? ...
- java例题_44 一个偶数总能表示为两个素数之和
1 /*44 [程序 44 偶数的素数和] 2 题目:一个偶数总能表示为两个素数之和. 3 */ 4 5 /*分析 6 * 1.从键盘得到一个偶数(大于2的偶数,因为1不是素数) 7 * 2.用for ...
- UVA - 1213 Sum of Different Primes (不同素数之和)(dp)
题意:选择k个质数,使它们的和等于n,问有多少种方案. 分析:dp[i][j],选择j个质数,使它们的和等于i的方法数. #pragma comment(linker, "/STACK:10 ...
- [51nod1138]正整数分解为几个连续自然数之和
解题关键:注意为什么上界是$\sqrt {2n} $ 因为函数是关于m的递减函数,而结果必须为正整数 $a = \frac{{2n + m - {m^2}}}{{2m}} = \frac{n}{m} ...
随机推荐
- Lucene中的域选项
Field类是lucene在索引过程中的一个很重要的类,该类控制着域值被索引的方式 域选项主要包括以下几种选项:域索引选项.域存储选项.域的项向量选项.域的排序选项等 域索引选项:通过倒排索引来控制域 ...
- 【BZOJ4372】烁烁的游戏 动态树分治+线段树
[BZOJ4372]烁烁的游戏 Description 背景:烁烁很喜欢爬树,这吓坏了树上的皮皮鼠.题意:给定一颗n个节点的树,边权均为1,初始树上没有皮皮鼠.烁烁他每次会跳到一个节点u,把周围与他距 ...
- 【BZOJ4099】Trapped in the Haybales Gold STL
[BZOJ4099]Trapped in the Haybales Gold Description Farmer John has received a shipment of N large ha ...
- onethink判断是否是手机访问?
第一步:找到:Application / Common / Common / function.php 添加判断是否是手机访问的代码: /** * 判断当前访问的用户是 PC端 还是 手机端 返回tr ...
- 【JavaScript算法】---快速排序法
一.快速排序法概念 我们将一个杂乱无章的数组进行一个快速排序,可以先从一个数组中取一个中间值,将一个数组一分为2,左边的数组跟中间值进行比较,小的放在左边,大的放在右边.比较完毕后再次取中间值,再次比 ...
- docker-compose命令和yml文件配置
docker-compose -f compose-server.yml up -d version: '3' services: eureka-server: image: mydocker/eur ...
- 170508、忘记jenkins密码或者修改jenkins密码
刚配置好jenkins时,不知道密码是什么,很多同学都有这种烦恼把,各种抓狂. 操作步骤: 1.进入jenkins用户目录 cd /home/rick/.jenkins/users/admin ps ...
- HOJ 1936&POJ 2955 Brackets(区间DP)
Brackets My Tags (Edit) Source : Stanford ACM Programming Contest 2004 Time limit : 1 sec Memory lim ...
- Process Monitor分析某个应用行为
1.打开Process Mointor 2.点击filter-->filter 在弹出的对话框中Architecture 下拉框,选择Process Name 填写要分析的应用程序名字. 点 ...
- OSX: 下载Flash Player的脚本
http://blog.csdn.net/cneducation/article/details/54742983