摘要: Best Cow Fences(poj2018)【问题描述】 题意很简单,就是给你n个数,求一个连续数串的平均值最大,数串长度不小于F n<=100000【分析】 在不考虑数据范围的情况下,可以很容易地写出O(n^2)的动规方程,f[i]=max{(sum[i]-sum[j-1])/(i-j+1)} 如果我们把sum的图像画出来,那么我们发现这就是过点Si和Sj-1的直线的斜率! 也就是问题转化成在求平面上任意两点斜率的最大值。这时候我们只要维护一个下凸折线就可以了。对于一个点i,显然它与折线相切时斜率最大。这个可以自己手动画个图看看。 我们可以用单调队列的算法来维护下凸折线,又由... 阅读全文
posted @ 2012-01-05 10:15 N_C_Derek 阅读(252) 评论(0) 推荐(0) 编辑
摘要: Ural1519 Formula 1(poj 1814)【问题描述】 一个 m * n 的棋盘,有的格子存在障碍,求经过所有非障碍格子的哈密顿回路个数。 m,n<=12【分析】 这个是在cdq的ppt《基于连通性状态压缩的动态规划》里的。 可以好好研究一下。 这题也算是状压的入门题了。【代码】 1 /************************************************************** 2 Problem: 1814 3 User: N_C_Derek 4 Language: Pascal 5 ... 阅读全文
posted @ 2012-01-05 09:36 N_C_Derek 阅读(310) 评论(0) 推荐(0) 编辑