摘要: 题意:给出矩阵A,求S = A + A2 + A3 + … + Ak分析:把问题转化以加速,令B =A I0 I则B^(k + 1) = A^(k + 1) I + A + A2 + A3 + … + Ak 0I用二分法求B^(k + 1)View Code #include <cstdio>#include <iostream>#include <cstdlib>#include <cstring>usingnamespace std;#define maxn 61struct Matrix{ int ma[maxn][maxn];} b, a 阅读全文
posted @ 2011-02-21 21:34 金海峰 阅读(1165) 评论(0) 推荐(1) 编辑
摘要: 我开始以为是拓扑排序,后来发现只要看每行3的个数就可以了View Code 阅读全文
posted @ 2011-02-21 19:11 金海峰 阅读(246) 评论(0) 推荐(0) 编辑
摘要: c(n,k)(k<=n)的奇偶性取决于(n-k)与k的二进制表达式是否存在同一位上的两个数码均为1,若存在,则为偶数,反之为奇数View Code 阅读全文
posted @ 2011-02-21 14:13 金海峰 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 题意:很难理解,意思是,给出一些硬币,总数一定,要求对于任何一种情况(无论几个正面,几个反面)都恰好进行k次操作,不多不少,使得朝上的面统一。每次操作可以翻一枚硬币。输入硬币总数,求所有满足条件的k中最小的。无解输出no solution分析:利用k的奇偶性。对于总数为偶数的情况。以六个为例,对于111111和111110,一个只能进行奇数次操作,另一个只能进行偶数次操作。k不可能既是奇数又是偶数,所以必定无解。 对于总数为奇数的情况。以五个为例,对于任意一种情况必定可以看成奇数个a面加上偶数个b面组成,由于11111必须要偶数次操作,所以所有情况都得偶数次操作,所以k为偶数,只能使所有的b面 阅读全文
posted @ 2011-02-21 13:48 金海峰 阅读(378) 评论(0) 推荐(0) 编辑
摘要: View Code 这是一个复杂的数学问题,但是可以通过小数据猜测出来,最后发现只要是2的幂就行,否则不行。 阅读全文
posted @ 2011-02-21 13:41 金海峰 阅读(210) 评论(0) 推荐(0) 编辑