摘要:
Problem Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下的向小序号方向靠拢,继续从头开始进行一至二报数。。。,以后从头开始轮 阅读全文
摘要:
链式前向星 writer:pprp 分析:比较难以理解,关键代码其实很短 如下: 结点声明: 建立语句: 遍历语句: include using namespace std; const int maxn = 1000; struct node { int to; int w; int next; 阅读全文
摘要:
邻接表表示 用vector实现 writer:pprp 代码如下: include using namespace std; const int maxn = 1000; struct node { int to; int w; node(int tt, int ww):to(tt),w(ww){} 阅读全文
摘要:
前向星的建立和遍历 writer:pprp 注意:从0开始不是从1开始 链式前向星算法可以对应点特别多的情况,可以存储重复边,但不能直接判断图中任意两点是有边。 代码如下: //writer:pprp //前向星表示 //注意:点的编号也是从0开始的,不能从1开始 include include i 阅读全文
摘要:
用前序中序建立二叉树并以层序遍历和后序遍历输出 writer:pprp 实现过程主要是通过递归,进行分解得到结果 代码如下: include include include include using namespace std; const int N = 1000; struct tree { 阅读全文
摘要:
同余问题 基本定理: 若a,b,c,d是整数,m是正整数, a = b(mod m), c = d(mod m) 1. a+c = b+c(mod m) 2. ac = bc(mod m) 3. ax+cy = bx+dy(mod m) 同余式可以相加 4. ac = bd(mod m) 同余式可以 阅读全文
摘要:
梅森素数 定义: if m是一个正整数 and 2^m 1是一个素数 then m是素数 if m是一个正整数 and m是一个素数 then M(m)=2^m 1被称为第m个梅森数 if p是一个素数 and M(p)是一个素数 then M(p)被称为梅森素数 Lucas Lehmer判定法:判 阅读全文
摘要:
梅森素数 定义: if m是一个正整数 and 2^m 1是一个素数 then m是素数 if m是一个正整数 and m是一个素数 then M(m)=2^m 1被称为第m个梅森数 if p是一个素数 and M(p)是一个素数 then M(p)被称为梅森素数 Lucas Lehmer判定法:判 阅读全文
摘要:
哥德巴赫猜想 nefu2 & 分拆素数和 hdu2098 //哥德巴赫猜想 include include include using namespace std; bool isprime[10000000]; int main() { memset(isprime,1,sizeof(isprim 阅读全文
摘要:
素数个数的位数 nefu 117 普及一个公式: 位数公式:要求一个数x的位数,用公式:lg(x)+1 素数分布:n/ln(n) 所以直接求解n/ln(n)的位数就可以了 代码如下: include include using namespace std; const double e = 2.71 阅读全文