07 2019 档案

摘要:F - Assign the task HDU - 3974 dfs序线段树 把树形结构变成线性区间结构,树的向下传值变成了这个节点能覆盖的区间的修改。 线段树代码是真的难调,一点小bug就是找不出来,卡了两天。 阅读全文
posted @ 2019-07-31 22:33 Chuhanjing 阅读(144) 评论(0) 推荐(0)
摘要:poj 3667 阅读全文
posted @ 2019-07-30 15:36 Chuhanjing 阅读(183) 评论(0) 推荐(0)
摘要:与无向图那题一样,但是需要多考虑一个点是树入度为0的点只有一个,因此边的前后顺序有了作用,这是和之前题的唯一区别。 阅读全文
posted @ 2019-07-29 21:24 Chuhanjing 阅读(420) 评论(0) 推荐(0)
摘要:J - 小希的迷宫 HDU - 1272 因为分到了并查集专题,就直接想到用并查集。 如果要连的当前边的两个端点在之前的图中已经连通,那么当前边一定会与之前的图构成一个环,那么直接就不成立了。如果没有环,那么再判断是否连通,如果连通就成立。算是一道并查集的应用题。 阅读全文
posted @ 2019-07-29 11:26 Chuhanjing 阅读(568) 评论(0) 推荐(0)
摘要:I - Connections in Galaxy War 正向做这道题非常困难,可以从逆向开始。 正向破坏边就是逆向加边。建图的时候把所欲破坏的边除去,那么这个图就是最后的图,当遇到破坏边时就加边,即回复到了破坏此条边之前的状态。 这个和食物过期的想法很像(D - Supermarket POJ 阅读全文
posted @ 2019-07-29 10:40 Chuhanjing 阅读(468) 评论(0) 推荐(0)
摘要:贪心,从最大的 天数往前推,因为保质期时间长的可以在保质期之前卖掉,从最大天数开始维护优先队列,如果优先队列不空的话,每次找出最大价值的。 阅读全文
posted @ 2019-07-28 21:47 Chuhanjing 阅读(199) 评论(0) 推荐(0)
摘要:Zjnu Stadium HDU - 3047 逾期说是种类并查集,其实更像是权值并查集,以一个点作为基准,通过路径压缩把所有的座位关系都变成与基准有直接关系的,查询的过程也是不断维护集合的过程,没有当前查询的信息,就插入查询的信息,如果有,则判断是否与集合中的信息冲突。 对于每次加入的时候都有下面 阅读全文
posted @ 2019-07-27 23:19 Chuhanjing 阅读(590) 评论(0) 推荐(0)
摘要:[POJ 1988] Cube Stacking 我们需要新增两种属性cnt[i]cnt[i]与s[i]s[i],分别表示ii之下的块数和ii所在堆的数量。在路径压缩时,cnt[i] += cnt[f[i]] ,另外在连接操作时,需要动态更新cnt[find(u)]和s[find(v)]的信息。 [ 阅读全文
posted @ 2019-07-26 14:03 Chuhanjing 阅读(496) 评论(0) 推荐(0)
摘要:1 /*定义dp[i][j]作为完成i钟,j个子系统需要的天数,那么很显然dp[i][j]由四种状态转移来 2 p1 = i*j / (n*s) 3 p2 = (n-i)*j / (n*s) 4 p3 = i*(s-j) / (n*s) 5 p4 = (n-i)*(s-j) / (n*s) 6 但是对于 dp[i][j],显然此时的dp[i][j]是0,就无法转移了, 7 此... 阅读全文
posted @ 2019-07-24 11:12 Chuhanjing 阅读(148) 评论(0) 推荐(0)
摘要:结合代码 阅读全文
posted @ 2019-07-24 10:25 Chuhanjing 阅读(272) 评论(0) 推荐(0)
摘要:H Second Large Rectangle 前天打比赛唯一的收获就是单调栈,然后这个题还没做出来,主要时没想到把它搞成直方图模拟,一直在推右下角作为最大矩形的dp,搞成直方图就很简单了,和poj那个入门单调栈题一模一样,只不过这个是有i层,还有一个点时每次找到最大的要对长-1还有宽-1,那么才 阅读全文
posted @ 2019-07-20 23:35 Chuhanjing 阅读(377) 评论(0) 推荐(0)
摘要:Can you answer these querites? HDU - 4027 普通的线段树题,但是有一个问题是,区间更新时,因为必须更新每个点,才能更新区间,那么线段树更新就很慢了,无法使用lazy数组。有一个小技巧是当区间和等于区间长度时,那么说明已经到最好的情况了,不用再修改了。这一步简化 阅读全文
posted @ 2019-07-19 22:30 Chuhanjing 阅读(190) 评论(0) 推荐(0)
摘要:维护一个单调增、一个单调减链,计算每个元素最为最大值或最小值被计算的次数。 num[i]记录对于元素a[i]最为最大值或者最小值往左能走的最远距离,这道题其实和poj那个算矩形的差不多,每次元素出栈的时候就能计算出该元素的右边界。 然后就有计算这个元素的贡献:ans-=(num1[S1.top()] 阅读全文
posted @ 2019-07-19 16:41 Chuhanjing 阅读(256) 评论(0) 推荐(0)
摘要:A Equivalent Prefixes 求对于序列a、b满足1<=l<<=r<<q所有相同区间的最小值下标相同的最大q 对于元素a[i],如果a[i]满足,前提条件是a[i-1]一定满足,因为1~i包含1~(i-1)的所有区间,那么就是从左到右扫,找到第一个不符合的i,那个i-1就是结果。 对于 阅读全文
posted @ 2019-07-19 09:49 Chuhanjing 阅读(278) 评论(0) 推荐(0)
摘要:区间最值差,线段树维护一个最大值,一个最小值。查询时,max-min就是结果 阅读全文
posted @ 2019-07-17 15:28 Chuhanjing 阅读(185) 评论(0) 推荐(0)
摘要:和上一题的区别在于这个题是对区间染色,上一题是点染色,区间比点少1 对于左右边界a、b,右边界b不变,左边界变为a+1即可 统计区间个数,所以要把每种染色的左右边界记录下来,看是否相连,不相连染色区间数+1 阅读全文
posted @ 2019-07-17 13:03 Chuhanjing 阅读(110) 评论(0) 推荐(0)
摘要:做过的线段树题目大多是,对于整体的数据范围0-m根据给出的点做区间划分,然后再统计数据。 对于m很大的,有些需要离散化 操作的时候分为在线和离线操作 阅读全文
posted @ 2019-07-17 10:36 Chuhanjing 阅读(157) 评论(0) 推荐(0)
摘要:A - Jungle Roads POJ - 1251 阅读全文
posted @ 2019-07-16 20:20 Chuhanjing 阅读(351) 评论(0) 推荐(0)
摘要:01分数规划,给n个物品,选择n-k个 选出来的n-k个最大化∑A(n-k)/∑B(n-k) 即∑ai/∑bi≥x就等价于∑ai−x∑bi≥0, 之后不断的向目标推进x,一般都二分。 裸题 poj 2976 Dropping tests 阅读全文
posted @ 2019-07-16 18:59 Chuhanjing 阅读(193) 评论(0) 推荐(0)
摘要:原博 [OI - 名词] 在线 离线 强制在线 一.简单的理解 在线和离线可以简单的理解为对于所有的操作是否需要读入完毕。 二.标准理解和要求 在线的要求是可以不用先知道所有的操作(类似询问、修改),边读入边执行,类似“走一步,做一步”的思想。 离线则与在线相反,要求必须知道所有的操作,类似"记录所 阅读全文
posted @ 2019-07-16 17:57 Chuhanjing 阅读(1179) 评论(0) 推荐(1)
摘要:A - Network of Schools POJ - 1236 1、问题要求至少需要几个文件,也就是求入度为0的强连通分量的数量。 求需要把图连通起来再加几条边? 因为对于某单个强联通分支,如果入度为0或出度为0那一定需要加边才可以和其他的强连通,因此可以统计入度为0和和出度为0的强连通分支数目 阅读全文
posted @ 2019-07-06 14:21 Chuhanjing 阅读(223) 评论(0) 推荐(0)
摘要:1、除去前导字符 阅读全文
posted @ 2019-07-01 21:45 Chuhanjing 阅读(113) 评论(0) 推荐(0)
摘要:比较容易想到,对于每个a[i]下取整,然后再把它的小数不和取和,那么求和是正的就需要补正的,求和是负的就需要补充负的。这个题是要注意浮点数运算精度问题,用eps卡下一下精度,eps取1e-8就可以。还有下取整上取整函数取到的数还是浮点数。 阅读全文
posted @ 2019-07-01 13:12 Chuhanjing 阅读(338) 评论(0) 推荐(0)