摘要: 最大流生动形象的板子,注意数组开大点 cpp include include include include using namespace std; const int N=100,inf=1e9; int n=26,m,h[N],cnt=1,s=1,t=26,le[N],x; char s1[5 阅读全文
posted @ 2018-05-25 18:25 lokiii 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 首先O(n^3)的贪心很好想,就是枚举k然后从前往后扫,扫到反就翻转区间 然后考虑优化掉翻转区间维,就是搞成差分的形式,在翻转区间的尾部打上标记,再用一个变量维护当前的翻转次数,加到当前状态上来判断是否需要翻转即可 cpp include include include using namespac 阅读全文
posted @ 2018-05-25 18:09 lokiii 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 算是比较经典的高斯消元应用了 设f[i]为i点答案,那么dp转移为f[u]=Σf[v] (1 p/q)/d[v],意思是在u点爆炸可以从与u相连的v点转移过来 然后因为所有f都是未知数,高斯消元即可(记得输出大难的时候除以总概率和) cpp include include using namespa 阅读全文
posted @ 2018-05-25 17:09 lokiii 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 其实是可以斜率优化的但是没啥必要 设st为花费时间的前缀和,sf为Fi的前缀和,f[i]为分组到i的最小花费 然后枚举j转移,考虑每次转移都是把j到i分为一组这样意味着j及之后的都要增加s的时间,同时增加这段的结束时间/ F,取min即可 cpp include include using name 阅读全文
posted @ 2018-05-25 14:45 lokiii 阅读(266) 评论(0) 推荐(0) 编辑