数论
jiang199235jiangJJ
这个作者很懒,什么都没留下…
展开
-
nyoj90 整数拆分(递归,背包两种解法)
题目:http://acm.nyist.net/JudgeOnline/problem.php?pid=90。 把一个整数拆分成的所有情况。 递归代码: #include #include using namespace std; int z[11]; int zh(int n,int m) { if(n==1||m==1) return z[n]=1; if(m==n) r原创 2012-07-10 09:42:16 · 2709 阅读 · 0 评论 -
poj 1032 Parliament 整数拆分
题意:简单说,就是给你一个数n(5= 解题:无意中在一个奥数网站上看到整数拆分这个知识,觉得不错就搜了一个水题试试,结果果然很神奇; 根据均值不等式得,可知最好拆分后的数相差不要太大。可以从自然数2加起,用sum(n)表示和,sum(2)=2,使其满足sum(n-1)=N; 则sum(n)-N的差值只可能是0,1,……n-1。 1、当差值是0,就讲a拆分成2,3,……n-1,n; 2、当原创 2012-04-06 15:15:13 · 2589 阅读 · 1 评论 -
线性时间筛素数
void getprime(int n) { bool notp[N];//判定素数 int pr[N],pn;//pr存素数,pn代表当前素数个数 memset(notp,false,n*sizeof(notp[0])); pn=0; for(int i=2;i<n;i++) { if(!notp[i]) pr[pn++]原创 2012-09-12 11:36:41 · 656 阅读 · 0 评论