uva 10104 Euclid Problem (数论-扩展欧几里德)
题目大意:
已知 A 和 B , 问你 A*X+B*Y=GCD(A,B)的 X,Y解。
解题思路:
非常裸的拓展欧几里德算法。
拓展欧几里德算法证明过程:
因为 B*X1+A%B*Y1=GCD(B,A%B) =GCD(A,B)=A*X+B*Y
所以 B*X1+(A-A/B*B)*Y1=A*X+B*Y
A*Y1+B*(X1-A/B*Y1)=A*X+B*Y
于是: X=Y1,Y=(X1-A/B*Y1)
因此,得出( A*...
分类:
其他好文 时间:
2014-05-26 05:53:55
阅读次数:
297
UVA 12034 - Race
题目链接
题意:给定n匹马,要求出可能的排名情况(可能并列)
思路:递推,dp[i][j]表示i匹马的时候有j种不同名次,那么dp[i][j]可以由dp[i - 1][j - 1]插入j个不同位置得来,或者由dp[i - 1][j]放入已有j的名次得来,得到递推式dp[i][j] = j * (dp[i - 1][j - 1] + dp[i - 1]...
分类:
其他好文 时间:
2014-05-26 05:07:44
阅读次数:
220
题目链接:uva 10497 - Sweet Child Makes Trouble
题目大意:有个小屁孩很淘气,总是趁父母不在家的时候去拿家具玩,每次拿n个家具玩,但是放回去的时候一定不会将某个物品放回原处,一定要打乱。问说有多少放的方式满足。
解题思路:dp[i]表示说i个数打乱的情况,dp[i]=(dp[i?1]+dp[i?2])?(i?1)每次新增一个数,放在序列的最后一个位置...
分类:
其他好文 时间:
2014-05-26 04:53:50
阅读次数:
255
题目链接:uva 1350 - Pinary
题目大意:给出n,输出第n给Pinary Number,Pinary Number为二进制数,并且没有连续两个1相连。
解题思路:dp[i]表示到第i位有dp[i]种,于是给定n,一层循环判断dp[i]≤n的话,就输出1,并且n减掉dp[i],注意输出0的时候,不能输出前导0.
#include
#include
typedef l...
分类:
其他好文 时间:
2014-05-26 04:38:12
阅读次数:
212
Background
Some concepts in Mathematics and Computer Science are simple in one or two dimensions but become more complex when extended to arbitrary dimensions. Consider solving differential equations...
分类:
其他好文 时间:
2014-05-26 04:31:34
阅读次数:
234
UVA 10843 - Anne's game
题目链接
题意:题意说得挺绕的,其实本质上就是求n个点,可以接连出多少种不同的生成树
思路:这是Caylay定理,网上能找到证明,结果为nn?2,然后利用快速幂去求解。
代码:
#include
#include
const int long long MOD = 2000000011;
int t;
long long n;...
分类:
其他好文 时间:
2014-05-26 03:36:35
阅读次数:
278
题目链接:uva 580 - Critical Mass
题目大意:给定一个栈,向栈里连续添加n次,每次可以添加U或者L,如果出现连续三个U则为不安全,问有多少种不安全的可能。
解题思路:先求出安全的,用总数减去安全的即为答案。
dp[i][j]表示以第i个位置结尾时,有末尾有j个连续的U。
还有一种解法,dp[i]表示第i个位置以L结尾的总数,dp[i] = dp[i-1] +...
分类:
其他好文 时间:
2014-05-26 03:24:49
阅读次数:
207
题目如下:
Problem D: Hartals
A social research organization has determined a simple set of parameters to simulate the behavior of the political parties of our country. One of the ...
分类:
其他好文 时间:
2014-05-24 23:10:01
阅读次数:
317
题目连接:uva 417 - Word Index
题目大意:按照题目中的要求,为字符串编号,现在给出字符串,问说编号为多少,注意字符串必须为递增的,否则编号为0。
解题思路:其实就是算说比给定字符串小并且满足递增的串由多少个。dp[i][j]表示第i个位为j满足比给定字符串小并且满足递增的串。
dp[i][j]=∑k=0j?1dp[i?1][k].
注意每次要处理边界的情况,并且...
分类:
其他好文 时间:
2014-05-24 22:59:44
阅读次数:
304
题目链接:uva 10312 - Expression Bracketing
题目大意:给出一个序列,长度为n,表示有n个x(节点),可以添加任意括号,问说形成的串为非二叉表达式的有多少个。
解题思路:直接求非二叉表达式是比较困难,所以换求总数减去二叉表达式的数量。二叉表达式的很容易发现是Catalan数,而总数时一种叫SuperCatalan数的一种序列,第一次接触。或者可以用dp做...
分类:
其他好文 时间:
2014-05-24 19:23:26
阅读次数:
309