![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数学
文章平均质量分 85
shiyuankongbu
这个作者很懒,什么都没留下…
展开
-
poj 2663 Tri Tiling
题目:poj 2663 Tri Tiling 题意:覆盖问题 思路:状态压缩? 反正可以 对于当前列的状态表示成长度为3的01串之后,枚举可以得到下一个状态的情况,构造操作矩阵,然后对初始矩阵从000出发(所以该值为1) 构造一个8 * 8 (2^3)的矩阵 注意枚举仅处理当前列的状态,不然对于下一列的状态会重复计算 #include原创 2013-05-29 23:15:55 · 1430 阅读 · 0 评论 -
poj 3420 Quad Tiling
题目:poj 3420 Quad Tiling 思路:状态压缩 #include #include #include #include #include using namespace std; long long n,mod; struct Matrix { int m[17][17]; }E,D; void init() { for(int原创 2013-05-30 19:44:31 · 1583 阅读 · 0 评论 -
Light oj 1332 - Kings in Chessboard
题目:Light oj 1332 - Kings in Chessboard 题意:对一个n*10的棋盘,像扫雷一样的每列放两个kings,求方案数 思路:构造转移矩阵 = = 技巧:对于2^32或者2^64的操作可以直接忽略,最后根据正负处理 #include #include #include #include #include using names原创 2013-06-05 07:44:06 · 1025 阅读 · 0 评论 -
hdu 2866 Special Prime
题目:Special Prime 题意:求范围L内满足 n^3 + p*n^2 = m^3 的素数p的个数 思路:化简一下得到 n^2 *( n + p ) = m^3 假设 n^2 和 n+p 之间有公共素因子 p , 那么 n+p = k*p , 即 n=p*(k-1),带进去得到 p^3 * (k-1)^2 *k = m^3 , (k-1)^2*k 肯定是不能表示成某一个数的三次幂的原创 2013-07-19 08:45:00 · 1348 阅读 · 0 评论 -
hdu 2608 0 or 1
题目:hdu 2608 0 or 1 题意:定义 T(n) 表示 n 内所有约数的和,S(n)表示 T(1)+...+T(n) , 求 S(n)%2 思路: 开始的时候,我想的基本上不对吧,将每个T(n)的元素罗列出来,发现总的S(n)的值应该是等于 n/1 + n/2 * 2 + n/3 * 3 + .... + n/n * n 的值(这里的除是整除),然后对于除后乘上偶数项的,我们原创 2013-07-20 15:26:11 · 894 阅读 · 0 评论 -
hdu 4335 What is N?
题目:4335 思路:对n!分成三部分,小于euler(mod)的部分,剩下的,根据能否整除euler(mod),分成循环节部分和剩余的部分(暴力) 参考了这里, here #include #include #include #include #include #include using namespace std; typedef unsigned __in原创 2013-07-24 15:10:31 · 870 阅读 · 1 评论 -
经典矩阵入门题
题目:点的变换 资料:http://www.matrix67.com/blog/archives/276/ 主要思路: (附图来自Matrix67大神) 注意点:对于各种操作,转化成矩阵之后,开始我随便写的Wa了一次,后来才发现我忘了矩阵乘法的不可交换性,所原创 2013-08-07 09:51:40 · 1045 阅读 · 2 评论 -
hdu 4655 Cut Pieces
题目:Cut Pieces 题意:对于方块,我们可以有 ai 种填色方案,给定方案中,连续的视为一段,求 ai 的某一个排列时,方案中段数和最大的情况。 思路:看标程比较好理解 用通俗的话说就是,总的方案数是n*S (S = a1*a2*...*an) ,对于其间重复计算的就是相邻时颜色一样的,得去掉,而总的重复的部分,就是S/max(v[i],v[i+1])原创 2013-08-08 23:08:50 · 1171 阅读 · 1 评论 -
hdu 4577 X-Boxes
题目:hdu 4577 X-Boxes 题意:将编号为1~n的球放到k个盒子中,要求满足,如果球x在盒子i中,盒子i+1中要有编号为2*x的球,盒子i-1中要有编号为x/2的球。求第一个盒子最多有多少种。 开始的时候我和wiking大神想的是所有的奇数肯定放第一个盒子里(满足x*2^(k-1) 事实证明少想了一步。。。。 我们是横着求链的长度,除以k,再相加。。。。 其实可以竖着求,一段原创 2013-08-10 21:36:53 · 1734 阅读 · 1 评论 -
概率和数学期望基础题
uva 11021 Tribbles 每只麻球都是独立的,所以先单独考虑一只麻球的繁殖情况,设f(i)表示i天之后全部死亡的概率,f(i)=p0+p1*f(i-1)+p2*f(i-1)^2+....p(n-1)*f(i-1)^(n-1) 分别表示:一只,一只也没出生的概率,一只自然死亡;出生两只,一只自然死亡,剩下i-1天全部死完的概率f(i-1)^2 ;.......;出生n-1只,一只自然死原创 2013-08-13 00:22:51 · 2218 阅读 · 2 评论 -
hdu 4599 Dice
题目:hdu 4599 Dice tag :概率dp 思路:跟上次多校一样的思路:click here 所以知道:F(n)=(6^n-1)/5 H(n)=6*F(n) G(n)=6*m 所以要求的是:m>=(6^n-1)/30 所以最小的m是 (6^n+24)/30 m%mod = (6^n+24)/30 %mod 分子部分用费马小定理,分子部分用逆元原创 2013-08-27 15:40:45 · 1527 阅读 · 0 评论 -
博弈题集(1)
题目:看到 这里 的一个分类,打算分四次把它搞定吧,现在看第一部分的题: //HDOJ1079 Calendar Game 具体情况具体分析就好,这题数据蛮弱,之前写错了也过了。 #include #include #include #include #include using namespace std; int main() {原创 2013-09-14 10:52:04 · 1341 阅读 · 1 评论 -
hdu 2486 A simple stone game
题目:hdu 2486 A simple stone game 思路:类似于斐波那契博弈的一个扩展,比较专业的名字叫“k倍动态减法游戏” 百度文库里有一篇专门的论文 再次膜拜 中学生 同时参考了 这里 #include #include #include #include #include using namespace std; const int ma原创 2013-09-13 15:41:25 · 1717 阅读 · 0 评论 -
hdu 3628 HeavenHelix
题目:hdu 3628 HeavenHelix 题意:华仔读题好厉害,膜拜之,吾等六级跪了的读题总是读不清。 一个火车在一个水平面上圆周运动,相当于给你一个圆柱体形的弹簧,沿着线一直走吧,然后圆心处有一个camera,每个时刻需要消耗的能量是X*D*ds,问在能量E的限制下,能走多远。已知的量还包括圆周上的半径和角速度,以及垂直方向上的速度。根据题目意思理解,是个积分问题。对每时每刻消耗的能量原创 2013-09-30 23:27:28 · 922 阅读 · 1 评论 -
hdu 4767 Bell
题目:hdu 4767 Bell 思路:两个公式 B(n+p)%p=(B(n)+B(n+1))%p B(p^m+n)%p=(m*B(n)+B(n+1))%p 首先明确的是,对于取模数,质因数分解 ,直接套用模板了。 #include #include #include #include #include #include #include using namespace原创 2013-10-01 16:26:44 · 1684 阅读 · 1 评论 -
hdu 4611 Balls Rearrangement
题目:Balls Rearrangement 思路:比赛的时候TLE了,目测找规律找错了,还是 YM 喵呜大神 吧 对于当前到最接近达到0的那个数字之间,所有的值都是相同的,这就没必要再求了,所以用tmp控制每次往前的距离。 #include #include #include #include #include using namespace std; long lo原创 2013-07-26 09:24:48 · 1245 阅读 · 0 评论 -
spoj 3871. GCD Extreme
题目:spoj 3871. GCD Extreme 思路:欧拉函数 做法 同 poj2480 时限好像是3s 我的AC代码运行的好像是接近5s 记得用%lld 用%I64d会Wa #include #include #include #include #include using namespace std; const int maxn=1000001; long原创 2013-09-20 20:18:10 · 1590 阅读 · 0 评论 -
Light oj 1070 - Algebraic Problem
题目:Light oj 1070 - Algebraic Problem 思路:这题之前有做过类似的,方法还是构造矩阵,但是这个mod有点挫,mod=2^64 这个值不好取,如果直接做的话,mod=0这样就RuntimeError了 对于用long long 来表示的数字,大小是从-2^64~2^64-1 所以我的运算里如果全部不取模,那么到最后如果是一个正数就直接输出,如果是一个负数的话,相原创 2013-05-23 20:24:41 · 1183 阅读 · 0 评论 -
Light oj 1028 - Trailing Zeroes (I)
题目:Light oj 1028 - Trailing Zeroes (I) 思路:求约数个数减1 好久没做数学题了,于是TLE和WA了好几遍 = = 其实这个题3月份做的时候就TLE了。。。。。 参考的 article : Prime Factorization 发现自己以前写的质因数分解确实写的效率不高,那篇article里面的两个idea写的很清楚,= =原创 2013-05-06 17:00:00 · 1607 阅读 · 0 评论 -
hdu 3835 R(N)
R(N) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1406 Accepted Submission(s): 725 Problem Description We know that some positi原创 2012-09-12 17:15:31 · 2231 阅读 · 2 评论 -
hdu 3006 The Number of set
The Number of set Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 832 Accepted Submission(s): 511 Problem Description Given you原创 2012-11-01 16:49:16 · 532 阅读 · 0 评论 -
hdu 1133 Buy the Ticket
Buy the Ticket Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2898 Accepted Submission(s): 1214 Problem Description The "Harry原创 2012-11-14 22:44:59 · 1137 阅读 · 0 评论 -
hdu 1131 Count the Trees
Count the Trees Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1046 Accepted Submission(s): 682 Problem Description Another c原创 2012-11-15 09:37:46 · 979 阅读 · 0 评论 -
hdu 2837 Calculation
Calculation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 885 Accepted Submission(s): 195 Problem Description Assume that f(0)原创 2012-11-24 12:42:39 · 1702 阅读 · 0 评论 -
hdu 3519 Lucky Coins Sequence
Lucky Coins Sequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 581 Accepted Submission(s): 301 Problem Description A原创 2012-12-29 22:19:31 · 762 阅读 · 0 评论 -
hdu 3524 Perfect Squares
Perfect Squares Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 377 Accepted Submission(s): 218 Problem Description A numb原创 2012-12-30 00:24:31 · 1689 阅读 · 0 评论 -
Light oj 1054 - Efficient Pseudo Code
题目:Light oj 1054 - Efficient Pseudo Code 思路:打出65536以内的素数,质因素分解后,判断最后剩下的一个数字如果不等于1的话,说明存在大于16位的素因子,这个特殊判断。 剩下的求约数的和,满足的就是求 (1+p+p^2+p^3...+p^n)的累积(这个式子的展开就是约数之和)这个式子用二分求 #include #include原创 2013-05-15 17:40:49 · 1247 阅读 · 0 评论 -
uva 11464 - Even Parity
题目:uva 11464 - Even Parity 思路:枚举第一行各个cell的奇偶状态,然后推出一次下一行的状态 #include #include #include #include #include using namespace std; int cnt[20][20],tmp[20][20]; int main() { int t; scanf(原创 2013-05-16 20:40:12 · 884 阅读 · 0 评论 -
NJUST 1739 - Count The Carries
题目:NJUST 1739 - Count The Carries 思路:用一个30位左右的数组,记录一下从0~n中各位出现1的频率,然后递推累加上去,就搞定了 这里 鄙视一下小胖(竟然说数据太大了搞不出来) = = #include #include #include #include #include using namespace std; long lo原创 2013-05-17 12:00:21 · 1166 阅读 · 0 评论 -
Light oj 1138 - Trailing Zeroes (III)
题目:Light oj 1138 - Trailing Zeroes (III) 思路:二分+暴力+求阶乘中某质因子的幂 #include #include #include #include #include #include using namespace std; long long n; long long get_5(long long n) { long原创 2013-05-20 14:47:36 · 1194 阅读 · 0 评论 -
hdu 2814 Interesting Fibonacci
题目:hdu 2814 Interesting Fibonacci 题意:求F(a^b)^(F(a^b) ^ (n-1))%c (F(n)表示斐波那契数列,1 思路:指数循环节和斐波那契数列循环节 F(n)%c 的情况,根据斐波那契数列的循环节求出来,做法跟12年四川现场赛那题一样。 式子中存在两个F(a^b) ,对于第一个,求对于mod c的循环节,第二个根据指数循环节,求mod ph原创 2013-08-19 23:42:41 · 1496 阅读 · 3 评论