- 博客(7)
- 收藏
- 关注
原创 UVA10229Modular Fibonacci(矩阵快速幂)
UVA10229Modular Fibonacci(矩阵快速幂) 题目链接 题目大意:给你i和m,求Mi, Mi = (F(i - 1) + F(i - 2)) % 2^m; 解题思路:因为Mi = (F(i - 1) % 2^m + F(i - 2)% 2^m) % 2^m = (M(i - 1) + M(i - 2)) % 2^m.类似于求fibonacci数加上取模,只是n
2014-12-13 11:24:27 694
原创 UVA10277 - Boastin' Red Socks(枚举+二分)
UVA10277 - Boastin' Red Socks(枚举+二分) 题目链接 题目大意:现在有m只红袜子,n只黑袜子,这样总袜子total = n + m;现在给你p, q,确定n和m,使得从这些袜子中取两只都是红袜子的概率等于p/q;如果没有这样的n和m满足要求输出impossible; 解题思路:m *(m - 1) / (total * (total - 1)
2014-12-13 09:51:21 802
原创 UVA10205 - Stack 'em Up(模拟)
UVA10205 - Stack 'em Up(模拟) 题目链接 题目大意:给你52张牌,这些牌一开始就有个顺序。现在给你每次的洗牌动作,52个数Ai,表示第i个位置上的牌放到Ai位置。意思就是能够通过这次洗牌,可以将i位置上的牌放到Ai位置上。至于后面的牌要不要移动什么的,根本不考虑。反正就是通过这次的洗牌,我给你52个数,把每个位置上的牌更新了一下。 解题思路:之前的题意看错
2014-12-04 22:36:37 752
原创 UVA10303 - How Many Trees?(java大数+catalan数)
UVA10303 - How Many Trees?(java大数+catalan数) 题目链接 题目大意:给你1-N N个数,然后要求由这些数构成二叉搜索树,问有多少种这样的二叉搜索树。 解题思路:把前5项理出来,正好是1 2 5 14 42..就猜想是catalan数,结果也是对了。公式f(i + 1) = (4∗i - 6)/ i; (i >= 2).结果很大,要用高精
2014-12-04 22:21:13 794
原创 UVA10183 - How Many Fibs?(java大数+二分)
UVA10183 - How Many Fibs?(java大数+二分) 题目链接 题目大意:给你a,b,求[a,b]之间有多少个fibs数。 解题思路:虽然a.b很大,但是在10^100内的fibs却不超过500个。这样就可以先把这些fibs保存在数组中,然后每次二分去找a,b的位置,然后就可以得到之间有多少个fibs。 代码: import java.util.*;
2014-12-03 22:42:45 701
原创 UVA - 10375Choose and divide(数论)
UVA - 10375Choose and divide(数论) 题目链接 题目大意:求 C(p,q) / C(r,s)的值。 解题思路:题目给出公式:那么上面的那个式子就等价于(p!s!(r - s)!)/(q!(p - q)!r!) 需要发现q!和 p!/(P - q)!的关系,枚举1..q的值,可以对应得到p.. p - q + 1,对应乘积就是p!/(p - q)! ,
2014-12-02 22:19:49 715
原创 UVA10308Roads in the North(dfs)
UVA10308Roads in the North(dfs) 题目链接 题目大意:给你多条道路,每条道路都连着两个不同的城市,并且给你这条路的距离,现在要求你找出离得最远的两个城市之间的距离。 解题思路:一开始,想用dfs,可是没有想到只需要任意找个节点dfs一次就可以了,还想着如果每个点都找一次,那么肯定行不通。看了题解后才发现只需要找一次就可以了,因为题目给的是一棵树,而且
2014-12-02 22:17:54 700
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人