恒邪

2014年4月8日 #

Euclid算法(欧几里得算法)

摘要: 线性组合与GCD现在我们证明一个重要的定理:gcd(a,b)是a和b的最小的正线性组合。证明:设gcd(a,b)为d,a和b的最小的正线性组合为s∵d|a且d|b,∴d|s。而a mod s=a-[a/s]s =a-[a/s](ax+by) =a(1-[a/s]x)-b[a/s]y亦为a和b的线性组合∵a mod s=b。用辗转相减法时,必须先判断大小,而Euclid算法不然。若a<b,则一次递归就会转为gcd(b,a),接着就能正常运行了。 阅读全文

posted @ 2014-04-08 20:17 恒邪 阅读(1846) 评论(0) 推荐(0) 编辑

用线性组合表示两个数的最大公约数

摘要: 用辗转相除法就OK了举个例子求(42,15)并用42和15线性表示(42,15)解:利用辗转相除法42=15*2+12①15=12*1+3②12=3*4③所以(42,15)=(15,12)=(12,3)=3由①有12=42-15*2代入②得3=15-12=15-(42-15*2)=-42+15*3所以(42,15)=-42+15*3=3即为所求一般地设整数a和b,有辗转除法a=bq1+r1(0=2)则有aQk-bPk=(-1)^(k-1)*rk(k=1,2,……,n) 阅读全文

posted @ 2014-04-08 20:08 恒邪 阅读(718) 评论(0) 推荐(0) 编辑

[ACM] poj 2484 A Funny Game(对称博弈)

摘要: A Funny GameTime Limit: 1000MSMemory Limit: 65536KTotal Submissions: 3795Accepted: 2268DescriptionAlice and Bob decide to play a funny game. At the beginning of the game they pick n(1 3, we use c1, c2, ..., cn to denote the coins clockwise and if Alice remove c2, then c1 and c3 are NOT adjacent! (B. 阅读全文

posted @ 2014-04-08 19:54 恒邪 阅读(142) 评论(0) 推荐(0) 编辑

[ACM] hdu 2177 取(2堆)石子游戏(威佐夫博弈)

摘要: Problem Description有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。如果你胜,你第1次怎样取子?Input输入包含若干行,表示若干种石子的初始情况,其中每一行包含两个非负整数a和b,表示两堆石子的数目,a和b都不大于1,000,000,且a#include #include #include using namespace std; 阅读全文

posted @ 2014-04-08 19:36 恒邪 阅读(248) 评论(0) 推荐(0) 编辑

POJ-2142The Balance

摘要: The BalanceTime Limit:5000MSMemory Limit:65536KTotal Submissions:2378Accepted:1041DescriptionMs. Iyo Kiffa-Australis has a balance and only two kinds of weights to measure a dose of medicine. For example, to measure 200mg of aspirin using 300mg weights and 700mg weights, she can put one 700mg weight 阅读全文

posted @ 2014-04-08 19:32 恒邪 阅读(143) 评论(0) 推荐(0) 编辑

[ACM] poj 1067 取石子游戏(威佐夫博奕)

摘要: 取石子游戏Time Limit: 1000MSMemory Limit: 10000KTotal Submissions: 33061Accepted: 10990Description有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。Input输入包含若干行,表示若干种石子的初始情况,其中每一行包含两个非负整数a和b,表示两堆石子的数目,a和b都不大 阅读全文

posted @ 2014-04-08 10:40 恒邪 阅读(193) 评论(0) 推荐(0) 编辑

导航