摘要:
题意:给3个数M,A,B,求两个质数P,Q。使其满足P*Q<=M且A/B<=P/Q<=1,并使P*Q最大。输入若干行以0,0,0结尾。 解法:先线性筛出素数表,再枚举出P,二分出对应的最大的Q,得出最佳答案。 注意——1.第二个的代码是标准的欧拉筛,可求每个数的最小质因数; 2. 像第一个代码二分时 阅读全文
摘要:
P.S.o(︶︿︶)o 唉~虽然这题方程不难,但题目长,代码长,我花了超过3小时!(>﹏<)悲伤辣么大~~~ 谨此题解惠及众人,hh。 题意:给定长度为M的一串颜色序列,和平面上的N个颜色隧道。要求以颜色序列的顺序通过颜色隧道。(隧道可多次使用,可交叉,互不相同。)问从源点到汇点依次通过颜色的最小距 阅读全文
摘要:
题意:给定一个队列延迟值为Di的任务,以任意顺序入栈和出栈,第K个出栈的延迟值为(K-1)*Di。问最小的延迟值。 解法:f[i][l]表示完成以第i个任务开始,长度为l,到第i+l-1个任务的最小延迟值。设其中的第j个任务为最后一个出栈的,则f[i][j-i]为先出栈的延迟值,f[j+1][i+l 阅读全文
摘要:
题意:若干组数据,分别问 N划分成K个正整数之和的划分数目、N划分成若干个不同正整数之和的划分数目、N划分成若干个奇正整数之和的划分数目。 解法:请见我之前的一篇博文内的Article 2——【noi 2.6_8787】数的划分(DP){附【转】整数划分的解题方法} http://www.cnblo 阅读全文
摘要:
题意:问正整数n的所有划分个数。 解法:f[i][j]表示划分 i 后的每个数不大于 j 的划分数。分情况讨论:划分中每个数都小于 j,相当于每个数不大于 j- 1, 故划分数为 f[i][j-1] 或 划分中至少有一个数为 j. 相当于把剩下的 i-j 进行划分,每个数不大于j, 划分数为 f[i 阅读全文
摘要:
题意:有M个家族的蚂蚁,各Ni只(互相相同)。问选出 l~r 只的不同方案数。 解法:很基础的一种DP,不要被“排列组合”所迷惑了啊~我之前接触过这个类型,可惜又忘了,一定要记住!这是一种类型的DP——M种N个进行DP,定义f[i][j]表示前 i 种中(这题是“家族”)选了 j 个(“只”蚂蚁)的 阅读全文
摘要:
题意:N个编号为1~N的数,选任意个数分入任意个盒子内(盒子互不相同)的不同排列组合数。 解法:综合排列组合 Stirling(斯特林)数的知识进行DP。C[i][j]表示组合,从i个数中选j个数的方案数;S[i][j]表示Stirling数,i个数分成j份的方案数;P[i]表示P(i,i)全排列。 阅读全文
摘要:
题意:有m个人有一张50元的纸币,n个人有一张100元的纸币。他们要在一个原始存金为0元的售票处买一张50元的票,问一共有几种方案数。 解法:(学习了他人的推导后~) 1.Catalan数的应用7的变形。(推荐阅读:http://www.cnblogs.com/chenhuan001/p/51571 阅读全文
摘要:
题意:有N个相同的球,M个不同的盒子,每个盒子最多放K个球。请计算将这N个球全部放入盒子中的方案数模1000007后的结果。 解法:f[i][j]表示i个盒子里放j个球的方案数。 1.得到3重循环的坐法,枚举第i个盒子里放k个球——f[i][j]=sum( f[i-1][j-k~j] ) 1 #in 阅读全文
摘要:
题意:给一个初始值1,每步操作将1替换为01,将0替换为10。问N步操作后有多少对连续的0。 解法:f[i]表示第i步后的答案。可以直接打表发现规律——奇数步后,f[i]=f[i-1]*2-1;偶数步后,f[i]=f[i-1]*2+1;至于原因——我只能简单说一点。第i步后的答案可由i-1步后的“0 阅读全文