2013年11月19日

LCIS

摘要: hdu3308:http://acm.hdu.edu.cn/showproblem.php?pid=3308题意:给你 100000个数列,然后更新某个点,然后查询区间内最长连续上升数列的长度,用线段树来维护区间的最大连续值,左连续最大值,右连续最大值,区间的左端点,区间的右端点。对于更新,父节点的最大值,首先求左儿子的最大值,右儿子的最大值,比较,选出大者,如果左儿子的又端点小于右儿子的左端点,则要考虑左儿子的右连续+右儿子的左连续是否大于刚才的那个值,选出大的更新。对于父节点的左连续,如果左儿子的左连续等于区间长度则父节点的左连续等于左儿子的左连续+右儿子的左连续,同理更新父节点的右连续。 阅读全文

posted @ 2013-11-19 21:38 天依蓝 阅读(223) 评论(0) 推荐(0) 编辑

Hotel

摘要: poj3667:http://poj.org/problem?id=3667题目大意:Hotel有N(1 ≤ N ≤ 50,000)间rooms,并且所有的rooms都是连续排列在同一边,groups需要check in 房间,要求房间的编号为连续的r..r+Di-1并且r是最小的;visitors同样可能check out,并且他们每次check out都是编号为Xi ..Xi +Di-1 (1 ≤ Xi ≤ N-Di+1)的房间,题目的输入有两种样式: 1 a : groups需要check in a间编号连续的房间 2 a b : visitors check out 房间,其中房间编号 阅读全文

posted @ 2013-11-19 13:42 天依蓝 阅读(158) 评论(0) 推荐(0) 编辑

导航