
常用算法
nacrt
这个作者很懒,什么都没留下…
展开
-
关于521 (用树状数组(尺取法))
关于521时间限制:1000 ms | 内存限制:65535 KB难度:2描述Acm队的流年对数学的研究不是很透彻,但是固执的他还是想一头扎进去。浏览网页的流年忽然看到了网上有人用玫瑰花瓣拼成了521三个数字,顿时觉得好浪漫,因为每个男生都会不经意的成为浪漫的制造者。此后,流年走到哪里都能看到5、2、1三个数字,他怒了,现在他想知道在连续的数中有原创 2016-07-26 18:39:22 · 1214 阅读 · 0 评论 -
蛇形填数n*n
/*描述在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:10 11 12 19 16 13 28 15 14 37 6 5 4输入直接输入方陈的维数,即n的值。(n输出输出结果是蛇形方陈。样例输入3样例输出7 8 16 9 25 4 3*/#include #include #define转载 2016-06-27 19:23:38 · 1968 阅读 · 0 评论 -
C语言register关键字—最快的关键字
此文源于网络:http://blog.sina.com.cn/s/blog_6a1837e90101128k.htmlregister:这个关键字请求编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻址访问,以提高效率。注意是尽可能,不是绝对。你想想,一个CPU的寄存器也就那么几个或几十个,你要是定义了很多很多register变量,它累死也可能不能全部把这些变量放入寄存器吧,轮也可能转载 2017-03-29 10:29:17 · 1126 阅读 · 0 评论 -
nyoj90 整数划分 动态规划与分治解法
原题链接:nyoj90 整数划分//dp代码//dp[i][j]表示j划分为i份的次数(也叫做j的i划分) //考虑n的m划分为a[0]+a[1]+a[2]+...+a[m]=n即dp[m][n]//1.如果每个a[i]都大于0,令每个a[i]都减1(共减去m个1),那么a[0]+a[1]+a[2]+...+a[m]=n-m于是就转化为n-m的m划分即dp[m][n-m]//2.原创 2017-03-29 22:21:47 · 20270 阅读 · 0 评论 -
nyoj汉诺塔(一 )解法集合 (主要用快速幂)
汉诺塔(一)时间限制:1000 ms | 内存限制:65535 KB难度:3描述在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必...原创 2016-07-22 11:25:52 · 23471 阅读 · 0 评论 -
辗转相除求最大公约数及素数判断函数
//求最大公约数:辗转相除法int gcd(int a,int b){ if(b==0) return a; gcd(b,a%b);}//素数判断int isPrime(int n) //判断素数{ if (n < 2) return 0; int i; for (i = 2; i * i <= n; i++) if (n % i == 0) re原创 2017-03-15 16:40:26 · 21401 阅读 · 0 评论 -
nyoj26 孪生素数 (用筛法 )
/*孪生素数问题时间限制:3000 ms | 内存限制:65535 KB难度:3描述写一个程序,找出给出素数范围内的所有孪生素数的组数。一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数。有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数。输入第一行给出N(原创 2016-07-13 18:45:44 · 1496 阅读 · 0 评论