关闭

[二分 后缀自动机 单调队列优化DP] BZOJ 2806 [Ctsc2012]Cheat

先在后缀自动机上匹配 求出mat[i]表示作文的每个位置i为结尾最长能匹配多长二分L 设f[i]表示前i个字符熟悉的部分最多有多长 那么f[i]=max(f[i-1],f[j]+i-j) 其中j要满足i-j>=L&&i-j+1<=mat[i] 得i-mat[i]<=j=mat[i+1] 得i+1-mat[i+1]>=i-mat[i] 所以i-mat[i]...
阅读(122) 评论(0)

[DP 暴力 || ST表 || 单调队列] BZOJ 1499 [NOI2005]瑰丽华尔兹

DP方程不难想 主要是优化 首先可以暴力AC 成就感满满 论文:周以苏--反汇编在常数优化因子中的应用 #include #include #include using namespace std; inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fre...
阅读(123) 评论(0)

[单调队列] 51Nod 1275 连续子段的差异

发现自己还不是很懂单调队列这一套理论啊 #include #include #include using namespace std; inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,100000,stdin); if (p1==p2...
阅读(120) 评论(0)

[分治 || 单调栈 单调队列] 51Nod 1215 数组的宽度

分治 #include #include #include using namespace std; typedef pair abcd; typedef long long ll; inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,1...
阅读(202) 评论(0)

[仙人掌直径 单调队列 DP] BZOJ 1023 [SHOI2008]cactus仙人掌图

题解: http://z55250825.blog.163.com/blog/static/150230809201412793151890/ http://hzwer.com/4645.html #include #include #include using namespace std; typedef long long ll; inline char nc() { s...
阅读(272) 评论(0)

[环套树 单调队列DP] BZOJ 1791 [Ioi2008]Island 岛屿

先找环 用环上每个点的子树的直径更新答案 然后跨环 把环展开倍增 做一遍单调队列DP max{f[i]+sum[i]+f[j]-sum[j]} 似乎可以直接套仙人掌模板啊 注意 long long  会爆栈 懒得手写栈 先让它RE好了 #include #include #include using namespace std; typedef long long ll; in...
阅读(297) 评论(0)

[Set 单调] BZOJ 2926 [Poi1999]空立方体问题

先考虑二维上的问题 然后就很好想到三维了 没有SPJ真蛋疼 #include #include #include #include using namespace std; typedef long long ll; inline char nc() { static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2...
阅读(404) 评论(0)

[单调队列] BZOJ 1071 [SCOI2007]组队

怎么看都是n3 然后弱弱的去膜了题解:http://www.cnblogs.com/rausen/p/4007292.html #include #include #include using namespace std; typedef long long ll; inline char nc() { static char buf[100000],*p1=buf,*p2=bu...
阅读(215) 评论(0)

[线段树 标记永久化 单调队列] BZOJ 1171 大sz的游戏 && BZOJ 2892 强袭作战

很好的题解:http://blog.sina.com.cn/s/blog_76f6777d0101dizp.html “考虑裸的n^2暴力dp. dp[i]=min(dp[j])+1 ( d[i]-d[j] 由于第二个相对较难处理,首先考虑它.  把x,y离散化后搞个线段树,支持插入删除一个区间的答案,并且询问区间的答案即可. 关于如何维护区间里的答案,虽然答案是...
阅读(608) 评论(0)

[二分答案 单调队列] BZOJ 3316 JC loves Mkk

%%%PoPoQQQ:http://blog.csdn.net/popoqqq/article/details/43059527 看到平均值最大果断二分答案 看到长度[L,R]果断单调队列 对数组维护一个前缀和,对前缀和维护单调递增的单调队列 每扫过一个数sum[i],将sum[i-L]加入单调队列,再把距离i超过R的点删掉 长度为偶数?对奇数位置和偶数位...
阅读(435) 评论(0)
    个人资料
    • 访问:264081次
    • 积分:11943
    • 等级:
    • 排名:第1328名
    • 原创:969篇
    • 转载:3篇
    • 译文:0篇
    • 评论:50条
    最新评论