摘要:
一开始读错题导致各种不会做,无奈其实是一道水题,缩点反向建图树形dp即可 1 type link=^point; 2 point=record 3 po:longint; 4 next:link; 5 end; 6 7 var dfn,...
阅读全文
摘要:
好像题目有点问题?且现在决定不吃的宝物以后也不能再吃好像下次还是可以吃的,就是这样然后明显是状压dp,注意这道题明显倒推更容易因为顺推很可能从一个无效状态推到有效状态 1 var f:array[0..101,0..32768] of double; 2 v,a:array[0..20] o...
阅读全文
摘要:
我们先穷举素数p然后令y>x 这样问题就是求这个gcd(x,y)=p (1<=x<y=n)不难发现必须y=kp k∈N* 当y=p时,易知个数为φ(1)当y=2p 个数为φ(2),……当k最大为[n/p]时,个数为φ([n/p])这不就是求欧拉函数的前缀和因此我们要用筛法把φ(1~n)求出来弄一下前
阅读全文
摘要:
noi水题,直接推出来每一位上取什么值才能取1直接搞就可以了 1 var a,b:array[0..40] of longint; 2 x,n,i,j,k,t,m,ans:longint; 3 fl:boolean; 4 s:string; 5 ch:char; 6 ...
阅读全文
摘要:
论将区间和转化为前缀和的重要性这题一旦转化为前缀和就非常明了了一段区间[l,r]的美妙程度就等于s[r]-s[l-1]对于这种无法计算出所有方案而取前k大的题目,我们一般分类别然后利用类别内的单调性用堆维护对于以i开头的区间,显然最美的长度在[l,r]之间的区间和显然是max(s[i+l-1~i+r...
阅读全文
摘要:
以前觉得这题好难,现在觉得这题还是挺简单首先看到类似LCP问题不难想到后缀数组吧前后的相似需要我们分别做一个后缀数组和“前缀数组”(就是把字符串反向然后跑后缀数组)这道题的难点就在于如何确定子串是什么考虑到一个有用的结论:任何一个子串都是某一个后缀的某一个前缀由于做完后缀数组之后,后缀已经按照从小到...
阅读全文
摘要:
网络流与线性规划24题中的餐巾计划吧明显要拆点吧,把每一天拆成2个点,i,i+n起点 终点 容量 费用s i inf c 每天都可以购买新毛巾i t ni 0 每天的需求s i+n ni 0 每天可能被洗的餐巾i+n i+n+1 inf 0 ...
阅读全文