• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • YouClaw
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
泳裤王子
不要挂科..
博客园 首页 新随笔 联系 订阅 订阅 管理

08 2012 档案

 
HDU 4389 X mod f(x)[数位统计dp]
摘要:我以前习惯叫"按位dp",貌似一样的.以前都是用记忆化搜索做,转移起来不用多想. 现在学了这个大牛 的写法, 感觉用迭代写也不错. 总结一下: 就是拿到一个上界bound.然后逻辑上将bound按位划分为三份,一份是统计过的,一份是当前统计位,最后一份是未统计位. 从bound的高到低位(a[n... 阅读全文
posted @ 2012-08-25 03:39 泳裤王子 阅读(129) 评论(0) 推荐(0)
HDU 3415 Max Sum of Max-K-sub-sequence[单调队列优化dp]
摘要:这题是有下界的最大子段和, 无上下界的最大子段和请看 hh大牛把这个归为单纯的单调队列题, 因为这个状态间不用转移, 其实无所谓啦, 思路都是一样的 思路: 单调队列优化dp 以i结尾的最大子段和 d[i] = max{ sum[i]-sum[k] | k=[i-K , i-1] }. 化为 d... 阅读全文
posted @ 2012-08-22 00:25 泳裤王子 阅读(164) 评论(0) 推荐(0)
HDU 1003 Max Sum + 单调队列优化dp解法
摘要:首先贴上经典dp解法, 以i结尾的最大子段和 d[i] = max(d[i-1]+a[i], a[i]). 但这不是本文的主要目的. 代码 O(n) : #include#include#include#include#include#include#include#includeusing ... 阅读全文
posted @ 2012-08-21 23:19 泳裤王子 阅读(162) 评论(0) 推荐(0)
POJ 2823 Sliding Window
摘要:http://poj.org/problem?id=2823 裸的单调队列. 注意: 队列里存的是下标, 就不要把他当做值用- - 代码: #include#include#include#include#include#include#include#includeusing namespac... 阅读全文
posted @ 2012-08-21 20:04 泳裤王子 阅读(139) 评论(0) 推荐(0)
HDU 4360 As long as Binbin loves Sangsang
摘要:这题调到后面真是调疯了.....一直wa啊wa................卧槽, 尼玛的原来是手敲队列的时候, 队列大小开小了, 因为spfa一个结点能多次进入队列......这他妈都能错........卧槽........... 代码: #include#include#include... 阅读全文
posted @ 2012-08-21 04:07 泳裤王子 阅读(122) 评论(0) 推荐(0)
HDU 4377 Sub Sequence[串构造]
摘要:比赛时A的, 由于是队友先写了wa, 然后我再改的, 所以代码有点奇怪 = =. 方法就是分sqrt(n)组(都取上界), 每组最多有sqrt(n)个数, 然后每组里数字递减. 这样可以保证取到最小的max(正序数, 逆序数). 然后就是要保证字典序最小, 方法就是给每组数初始设为1个数, 然... 阅读全文
posted @ 2012-08-20 03:14 泳裤王子 阅读(141) 评论(0) 推荐(0)
Vijos 1243 生产产品[单调队列优化dp]
摘要:好吧...作为我A掉的第一道单调队列优化dp....在高中生的OJ上....而且我调了一个半小时样例....然后很神奇的1A = =... 诶 这题果断比多校8的1005难啊...min里面的东西这么奇葩的...又 k 又 p 又 j 地...开始我以为只要一个队列, 搞了半天发现应该要N个队列... 阅读全文
posted @ 2012-08-20 03:03 泳裤王子 阅读(156) 评论(0) 推荐(0)
关于dp的状态描述
摘要:dp的第一步一般都是想出一个合适的指标d 来描述状态. 而我总是想出一些重叠子问题少的, 区分性强的指标, 导致失败. 其实应该尽可能想那些能造成很多重叠子问题的, 又能准确区分状态与状态的 一个指标, 这样 dp效率 才高. 维数才低. 阅读全文
posted @ 2012-08-20 02:47 泳裤王子 阅读(161) 评论(0) 推荐(0)
FZU 1894 志愿者选拔[双端队列/单调队列]
摘要:写这篇题解前重复一句被很多人说过的话...."一直以为单调队列就是优先队列, 2了....." 然后这题开始用priority_queue, 悲催地TLE了... 科普: 1/ 优先队列, 一般用堆实现, 就是STL里priority_queue那玩意...也就是优化dijkstra时用的那玩意... 阅读全文
posted @ 2012-08-19 23:32 泳裤王子 阅读(121) 评论(0) 推荐(0)
HDU 4370 0 or 1
摘要:这题答案就是 min(1~n最短路, 包含1的最小环+包含n的最小环). (最小环不包括自环). 这题没什么, 就是求最小环的时候要注意下. 1/ 如果用邻接表, 那dist数组初始化肯定是INF, 但注意dist[st] 还是初始化为0. 不然之后无法拓展其他点. 然后在relax的时候 另... 阅读全文
posted @ 2012-08-19 16:36 泳裤王子 阅读(117) 评论(0) 推荐(0)
HDU 4371 Alice and Bob
摘要:队友出的 #include #include using namespace std;int main(){ int T; cin>>T; for(int t=1;t>n>>m; string name; int min=999999999; ... 阅读全文
posted @ 2012-08-18 20:50 泳裤王子 阅读(119) 评论(0) 推荐(0)
HDU 4379 The More The Better [坑爹想法题]
摘要:这题各种卡. 先是卡空间, n太大了, 想要都存下来再sort只能是MLE. 因为开不下, 所以逼你写空间复杂度O(1)的算法, Online扫一遍. O(n)的时间复杂度. 算法是, 小于等于 L/2 的都可以加进来, 而大于L/2的可能可以加入一个, 只要min(大于L/2的)+max(小于... 阅读全文
posted @ 2012-08-18 20:45 泳裤王子 阅读(157) 评论(0) 推荐(0)
[专辑]计算几何初步
摘要:貌似是第一次做计算几何的题, 以前都是了解里面些概念但没做过题....主要是没精力来完善到这一块....而且比赛的时候"疲于奔命"似的做其他被人刷爆的题目..... 边讲题边讲我对计算几何初步的理解..... POJ 2365 Rope 求一个凸包的周长, 题目已经是按顺序给出凸包的各个点, 所... 阅读全文
posted @ 2012-08-17 03:05 泳裤王子 阅读(189) 评论(0) 推荐(0)
HDU 4302 Holedox Eating
摘要:多校的时候这题写了一个多小时....调了半个多小时过完样例, 然后一直wa..... 当时何其悲惨....其实也是很傻逼的一道, 就是模拟动物走的部分要写得仔细一点....尽量分模块写... 线段树: 单点更新, 区间查询, 维护区间离端点最近的有食物位置. 注意题目线段是0~n. 代码... 阅读全文
posted @ 2012-08-13 16:09 泳裤王子 阅读(87) 评论(0) 推荐(0)
POJ-3667 Hotel[线段树]
摘要:题意: 有连续的N间房间, 两种操作, 一是Check in, 要找D间连续的空房间出来(房号尽可能小), 输出第一个的位置, 如果没有就输出0; 二是Check out, 从x号房开始连续的D个房间, 重新变成空房间. 思路: 1/ 先说我开始的想法: N个房间当成1~N的线段, 我们肯定是... 阅读全文
posted @ 2012-08-12 20:47 泳裤王子 阅读(107) 评论(0) 推荐(0)
5798 - Jupiter Atacks!
摘要:http://livearchive.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3809 单点更新+区间查询+维护区间公式和 这题算是昨天开始刷线段树做过的比较难的了吧.... 阅读全文
posted @ 2012-08-12 11:56 泳裤王子 阅读(147) 评论(0) 推荐(0)
HDOJ 1698 Just a Hook [区间替换+区间查询]
摘要:这题我知道我做过. 但是现在做还是搞了半天. 因为还是对 pushdown 这个没搞清楚. 这个函数不是维护e的 , 而是维护e的 子节点的. 由于这题只要查询一次整段的值, 返回a[1]即可. 代码1 (标准写法, pushdown维护到子节点): #include#include#inc... 阅读全文
posted @ 2012-08-12 03:05 泳裤王子 阅读(97) 评论(0) 推荐(0)
HDOJ-2795 Billboard [线段树][单点更新+单点查询+维护区间最值]
摘要:8s时限 单点更新+单点查询(要用区间信息来找到那个点) 注意:对于维护区间最值的, 附加域直接当主域用, 因为叶节点的最值就是那个点的值 思路: 1/ 维护区间最左的还未满w的点, 若整个区间满了, 用-1表示 这样不行的, 试想若最左未满点若剩余量还是#include#include#i... 阅读全文
posted @ 2012-08-12 01:00 泳裤王子 阅读(91) 评论(0) 推荐(0)
[专辑]线段树总结[updating]
摘要:去年半途而废了,今年打算好好把hh大牛的专题好好做一遍....债好像越累越多了... 预备: 1/ 结点数为4*MAXN. 为什么不是2*MAXN? 因为MAXN不一定正好是2^x, 也就是说最底下那层最多可以有约2*MAXN个数. 所以总结点就是 2*2*MAXN. 2/ 一般来说, 结点有主... 阅读全文
posted @ 2012-08-12 00:54 泳裤王子 阅读(105) 评论(0) 推荐(0)
POJ 2289 Jamie's Contact Groups 多重匹配+二分
摘要:题目大意是给你一堆联系人, 每个人有几个标签, 然后让你将他们分组(每组里的人要标签相同), 问其中人最多的组的人数最少是多少. 有点像鸽巢的感觉...开始我想了一个, 以为是每次求最大匹配, 然后把已盖点的邻边全删掉, 然后看能求几次最大匹配....WA之... 其实显然是错的, 因为每次删去... 阅读全文
posted @ 2012-08-05 18:18 泳裤王子 阅读(117) 评论(0) 推荐(0)
POJ 2516 Minimum Cost
摘要:最小费. 主要是这题有K种货物搞得关系很复杂, 开始建图卡住, 其实把k种货物分开来建k次图跑k次就好了. 然后判断最大流和是否满足需求, 若满足则输出最小费和, 若不满足, 则输出-1. 貌似还可以用KM 代码: //最小费用流// 建k次图... 最小费#include#include#... 阅读全文
posted @ 2012-08-05 18:01 泳裤王子 阅读(112) 评论(0) 推荐(0)
POJ 1149 PIGS
摘要:最大流. 注意有可能有多个人拥有同一个门的钥匙, 而且客人是按题目输入的顺序来的. 所以客人间要连边. 丢了个sap模板 代码: #include #include #include #include #include #include using namespace std;//调用方法:... 阅读全文
posted @ 2012-08-05 17:52 泳裤王子 阅读(98) 评论(0) 推荐(0)
POJ 1274 / POJ 1469 / POJ 2239 二分图最大匹配
摘要:都是一些很裸的二分图最大匹配. 纯当复习了. POJ 1274 #include#include#include#includeusing namespace std;#define bug(s) cout G[MAXN];int vis[MAXN];int flag[MAXN]; //0-... 阅读全文
posted @ 2012-08-05 17:46 泳裤王子 阅读(98) 评论(0) 推荐(0)
[网络流] 最大流 最小费 回顾
摘要:1/最大流 容量网络作为问题的有向图. 要有反向弧用于回流, 且反向弧容量为0. 残量网络, 残量=容量-当前流.(容量/当前流/残量都有反向弧) 残量>0,代表可达, 所以要不断在残量网络中找 s 到 t 的可达路. 称为增广路. 什么叫增广路? 就是当你把这条路加进来后, 会使你的结果更优.... 阅读全文
posted @ 2012-08-05 14:37 泳裤王子 阅读(290) 评论(0) 推荐(0)
[经典dp] HDU - 2517 棋盘分割 [废话流详解]
摘要:今天真是被虐到死....... 不说废话了...分析下题目: 题意: 一个8x8的棋盘, 每个小格子有一个值v(0#include#include#include#include#include#include#includeusing namespace std;inline int Rint... 阅读全文
posted @ 2012-08-03 20:33 泳裤王子 阅读(117) 评论(0) 推荐(0)
图的BFS - HDU 1241/HDU 2612/POJ 3984
摘要:这完全是回顾以前的知识了...写的时候一些似曾相识的手法渐渐冒出来........- - 然后其实题目都很水....但是看在我WA到现在的份上...贴出来.... HDU 1241 #include#include#include#include#include#include#includ... 阅读全文
posted @ 2012-08-03 01:51 泳裤王子 阅读(88) 评论(0) 推荐(0)
[深搜+剪枝] POJ - 1011 Sticks
摘要:http://poj.org/problem?id=1011 我表示这也许是我第一次做这种要强剪枝的题目.... 跪了...先是搜索状态搞不清连个dfs都写不出来....然后是不会剪枝狂TLE.... 还是看了这位大神的博客....才把几个剪枝搞清楚....少了一个都会TLE....伤不起..... 阅读全文
posted @ 2012-08-02 21:30 泳裤王子 阅读(111) 评论(0) 推荐(0)
[编辑长度/字符串dp] HDOJ - 4323 Magic Number
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4323 关于编辑距离这篇博客讲得比较清楚, 还把第四种编辑"邻位交换"加进去了. 现在突然觉得原来字符串dp有好多,为什么?因为字符串是典型的无后效性吧,这种两串来二维dp的比如最长公共字串也是经典dp了. 状... 阅读全文
posted @ 2012-08-02 17:23 泳裤王子 阅读(153) 评论(0) 推荐(0)
[线段树+离散化+单点查询] HDOJ - 4325 Flowers
摘要:一年没写线段树, 全凭回忆加YY能1A好哈皮.............. 很裸的线段树, 就是需要先离散化. 离散化我记得有lower_bound这种东西, 但是想不起来怎么用了...所以这里是YY了用了个map然后O(n)循环进行离散值对应... 预备: 1/ STL - unique, ... 阅读全文
posted @ 2012-08-01 21:18 泳裤王子 阅读(109) 评论(0) 推荐(0)
HDU - 4324 Triangle LOVE
摘要:思路就是简单的dfs+标号, 若发现一趟dfs中又标号差2的, 则存在三角关系. 但写了N久还是wa.... 有一个地方我觉得是有问题的, 就是在判断标号差2的时候, 有可能v的标号是前一趟dfs的而不是当前趟dfs的, 所以v的标号就不能说明什么问题了...这样可能导致wa 简言之就是要在判断... 阅读全文
posted @ 2012-08-01 15:14 泳裤王子 阅读(110) 评论(0) 推荐(0)
HDU - 4320 Arcane Numbers 1
摘要:开始的时候没看懂 a finite decimal, 我以为是有限小数的数, 其实也是...吧....好吧好像这没什么关系(因为整数部分各数值可以随意转换么.....虽然我当时抽了以为不可以.....) 但是我没意识到这是小数的数值转换, 十进制小数转二进制是乘二取整么(注意这里进位是十进制的)... 阅读全文
posted @ 2012-08-01 13:36 泳裤王子 阅读(122) 评论(0) 推荐(0)
LightOJ 1042 - Secret Origins
摘要:http://www.lightoj.com/volume_showproblem.php?problem=1042 代码: #include#include#include#include#include#include#includeusing namespace std;int Rin... 阅读全文
posted @ 2012-08-01 02:01 泳裤王子 阅读(122) 评论(0) 推荐(0)
 

公告


博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3