
代数||数论
只玩三国的程序猿
23333333333
展开
-
CodeForces 2B The least round way(dp+数学)
题意:给你一个矩阵,让你在里面找一条路径,使得这条路径上的数相乘之后的末尾0 最少。 一看像是一个dp的题,但是还是需要一点数学在里面(数学渣伤不起),末尾 0最少,意味着路径上的数的2和5因子要尽量少,所以我们需要找两条路,一条 是2最少的,一条是5最少的,那么答案就是min(a,b),为什么呢?我们设想一 下,2最少的那条路保证了其他路上的的2都比这个多,5也是同理,又因为这 两条路一般不会是一原创 2016-02-13 19:43:59 · 528 阅读 · 0 评论 -
HDU 1575 Tr A(矩阵快速幂)
题意: 矩阵快速幂模板。 代码:// // Created by CQU_CST_WuErli // Copyright (c) 2016 CQU_CST_WuErli. All rights reserved. // #include <iostream> #include <cstring> #include <cstdio> #include <cstdlib> #include <原创 2016-03-05 00:23:29 · 464 阅读 · 0 评论 -
LightOJ 1065 Number Sequence(矩阵快速幂)
题意: 就是用矩阵快速幂求斐波那契数列并取模。顺便学了一下矩阵快速幂。至于矩阵快速幂是什么就去看看讲解的博客吧。 代码:// // Created by CQU_CST_WuErli // Copyright (c) 2016 CQU_CST_WuErli. All rights reserved. // #include <iostream> #include <cstring> #in原创 2016-02-27 23:24:13 · 587 阅读 · 0 评论 -
Codeforces 678B Remainders Game(数论)
题意: 给你一个k,再给你一个数组c,让你判断对于任意的非负整数x,知道了xmodcifori:=1tonx mod c_{i} \quad for\quad i := 1\quad to \quad n的值,问你是否能够知道xmodkxmodk的值。 作为一个数学渣,完全没有想法。 其实我们可以从反面来考虑这个问题。假设有两个x1和x2是的上述的条件不成立,依旧是说对于每一个数字原创 2016-07-08 16:59:51 · 777 阅读 · 0 评论 -
Codeforces 689E Mike and Geometry Problem(组合数学)
题意: 给你n个x轴上的线段,在其中选k个线段,对于所有的可能方案,总共有多少点次被覆盖,也就是说同一个点如果被不同的方案所覆盖还是要被算在答案里的。 这个题首先我们要把线段的端点离散化,用map就可以,对于某一段,我们可以算出被多少条线段覆盖,假设这个值为p,如果这一段被大于等于k个线段覆盖,那么ans+=Ckp∗numans +=C_{p}^{k} * num,num是这一段点的个数。原创 2016-07-08 17:28:52 · 669 阅读 · 0 评论 -
Codeforces 676E The Last Fight Between Human and AI (数论)
题意: 给定一个参数不确定的多项式,电脑和人类轮流确定系数的大小,可以使任意实数,使得这个多项式能够除以x-k,判断如果人类选择最优的方法,是否可以胜利。 解法: 这题要分类讨论,如果k=0的话,只要a[0]=0,那么就可以整除,所以我么你只需要判断a[0]是否已经被赋值且是否为0,这个好判断。 然后是k不等于0时,那么就有两种情况,一种是所有的系数都被赋值了,判断k是否是这个多项式的原创 2017-01-18 16:12:16 · 388 阅读 · 0 评论 -
Codeforces 696C PLEASE(数论)
题意: 给你三个杯子,一开始中间的杯子里有钥匙,每一次把中间的杯子和左右两边中的一个杯子交换,每次选择是等概率的,问你n次操作之后,钥匙在中间杯子的概率是多少,并且用分数形式表示出来。 解法: 这题有两个需要处理的,一个就是因为n会很大,所以给的n的各个因子,不过这个没啥困难的,价格矩阵快速幂就能算,另外dp的方程很好推,就是dp[i] = (1 - dp[i - 1]) * 0.5。然后他原创 2017-02-02 21:41:16 · 594 阅读 · 0 评论