P2161 [SHOI2009]会场预约 - 线段树染色

是真的染色,把不同预约看做不同颜色,现在问题就是一个区间内不同颜色的数量,这个分块线段树都能做吧(不考虑复杂度用莫队也行) 注意,线段树的最大边界必须是定值,不能随输入改变(一开始懒得离线动态更新右端点然后节点的编号就串了) 注意数组大小,因为same和tag数组都是针对线段树节点设置的,所以...

2018-10-08 11:29:01

阅读数 51

评论数 0

P2918 [USACO08NOV]买干草Buying Hay - 完全背包

枚举上界还是好确定的,至多买h + 5000磅干草,因为一捆干草至多重5000磅 #include <algorithm> #include <iostream> #include <cs...

2018-10-08 08:46:12

阅读数 36

评论数 0

P3224 [HNOI2012]永无乡 - 平衡树 - 并查集

开n棵平衡树,慢慢合并成一个,用并查集处理连通关系,平衡树处理第k大就好了 因为重要度是不会有重复的,而且是从1到n的,可以开一个数组,表示重要度为k所对应的编号 要善于把一个新问题转化为一个已解决过的问题 我甚至想自己搞出一个新算法处理连通关系,但是用并查集不就好了吗 思维定势:一个题只用一个学...

2018-10-07 20:04:21

阅读数 47

评论数 0

P2023 [AHOI2009]维护序列 - 线段树区间乘法加法

记得及时更新sum(每次修改都更新),写成一个update函数比较好,因为很多时候会忘了% 还有懒标记是标记在这个点本身上的 然后就是左儿子和右儿子一定要看清楚。。。 一个是n * 2 ,一个是 n * 2 + 1 ,涉及到这部分的代码一定要专注 乘法标记优先级大于加法,并且对加法标记也有...

2018-10-07 10:08:59

阅读数 36

评论数 0

P1484 种树 - 堆 - 贪心

这题想得脑阔疼。。。我只想到可以选一个点,或者不选这个点选其左右两个点的和 先来特殊情况,k=1, 然后k=2 可以发现由1到2的过程中,可以是一个本来被选的点,替换为他左右两边的点,收益增加了a[pos+1] + a[pos-1] - a[pos] 这个题是一个个选,直到选了k个,有种递推...

2018-10-06 19:49:53

阅读数 39

评论数 0

P3368【模板】树状数组 2 - 差分

建立两个差分数组,套公式就好了 c[i]表示i元素的“增量”,下面的式子左边是序列从1 ~ x的前缀和整体增加的值 ∑i=1x∑j=1ic[j]=(x+1)∑i=1xc[i]−∑i=1xi∗c[i]\sum_{i=1}^x\sum_{j=1}^ic[j] = (x+1)\sum_{i=1}^xc[...

2018-10-05 17:11:20

阅读数 38

评论数 0

P2055 [ZJOI2009]假期的宿舍 - 二分图最大匹配

把人和床分开考虑,题目说每个人只能睡和自己直接认识的人的床,就是一种边的关系,但是并不是人与人,实际上人与人之间连边是很难处理的,但是如果把人和床连边,就是一张二分图,左右两边分别是不同的东西,然后求一下最大匹配就好了 没思路的时候换换角度,看能不能搞出什么“新东西”来 注意多组数据不超时的情况下...

2018-10-05 16:31:04

阅读数 35

评论数 0

P1273 有线电视网 - 树上背包

树上背包看作分组背包就好了,收益临时变成负数也是可以的,并且收益的数值也很大,所以不再让收益当下标,放到数组里保存,设f[x][t]表示以x为根的子树中选择t个人观看节目,电视台的最大收益(让你求什么反而不一定要存在数组里面,可能是设为数组下标再判断可行性) 这题比较特殊,一般分组背包是过不了这么...

2018-10-04 21:14:54

阅读数 35

评论数 0

Prim模板

#include <algorithm> #include <iostream> #include <cstring&g...

2018-10-04 09:23:54

阅读数 85

评论数 0

P2577 [ZJOI2005]午餐 - 贪心 - dp

首先考虑只放一队的情况,显然是吃饭时间长的优先打饭,然而我没这么想直接套了国王游戏的模型,事实上还是从别的角度多想想比较好 然后是dp,这道题怎么安排人到不同的窗口很难说,所以考虑用最暴力的状态和转移(反正数据范围小) 设f[i][j][k]表示安排了前i人,第一个窗口的打饭总时间为j,第二个窗口...

2018-10-04 07:59:35

阅读数 27

评论数 0

P1726 上白泽慧音 - 强连通分量模板

虽然是模板但是却提醒我有向图一定要试着从每个点出发,不仅仅是因为图不一定连通,更有可能是只从1号点出发哪也去不了的情况 #include <algorithm> #include <iostream> #inc...

2018-10-03 16:21:36

阅读数 22

评论数 0

P1993 小K的农场 - 差分约束

看出不等式之后,通过移项套模型 大概不等式模型是这样的:xv<=xu+w(u,v)x_v <= x_u + w_{(u, v)}xv​<=xu​+w(u,v)​ xv−xu&amp...

2018-10-02 16:10:42

阅读数 56

评论数 0

P2346 四子连棋 - 迭代加深

难点是想到颜色可以为O,搜索的过程中可能会把一个O移动到另一个O上面,然后搜索的颜色参数就变成O就错了。。。 也没什么好办法,就是判到O直接跳过。。。 另外,要习惯把各种量写在参数表里,这样能省很多代码。。。也更好调试 #include <algorithm&...

2018-10-01 16:06:55

阅读数 42

评论数 0

BZOJ1878 [SDOI2009]HH的项链 - 莫队

交到洛谷上只有80分。。。 注意初始值 l = 1, r = 0 然后就是修改的部分(revise) 我套用了之前的习惯,直接传值进去,直接+=k 然后判断是否为1或者0,但是我没有想到1可以是0+1得来也可以是2-1得来 所以想安全一点就写if和else吧。。。有时候真的难以想到这种可...

2018-09-30 17:46:16

阅读数 33

评论数 0

P2473 [SCOI2008]奖励关 - 期望(神奇的倒推) - 状态压缩

大力模拟各种情况 k * n 的模拟出每次可能抛什么出来 设f[k][s] 为前k个物品状态为s时得分最大值 但是有问题啊,比如 113 和 133,状态都是f[3][101],难道我还要多开一维存下不同情况?,不行吧? 还是说取最大的?,这相当于后面选择的物品,对前面的状态强行选择了一下...

2018-09-30 15:04:59

阅读数 76

评论数 0

P2596 [ZJOI2006]书架 - 无旋treap

fhq treap多么强劲。。。 当用无旋treap解决区间/序列问题时,其实每个点所存的值不再对树的形态产生影响,复杂度由随机优先级和堆结构来保证。这棵树不是以点的值为关键字,而是以点的值在序列中的位置为关键字 但是需要一个操作,给出点的值,我们找他在序列中第几个位置 似乎用原来的那些tr...

2018-09-21 17:06:41

阅读数 55

评论数 0

P1108 低价购买 - DP - 基于dp数组求方案

首先求一遍最长下降子序列 然后考虑到方案会重复,而避免重复是件挺难的事,不妨先考虑不管重复求方案 那么如何求方案呢,设pl(i)表示以i为结尾的最长下降子序列方案数,因为表示的是最长的序列,所以只有在i前面,比i大,最长序列长度还恰好比i小1的可以方案转移到i上 然后删掉那些重复的,但是重复的实在...

2018-09-20 15:41:58

阅读数 29

评论数 0

Codeforces #510 1042 div2 ABC

这次比#509多考了800分左右结果反而掉rating了,据说是这次参加人数少。纠结ing >_< A. Benches 给定n个正整数,现在要把数字m拆一拆分配到这n个正整数的某些上面,设k为分配后这n个数最大的一个...

2018-09-17 21:19:44

阅读数 60

评论数 0

Codeforces #509 div2 1041 ABCD

A 给你一个n个索引 键盘都是从某个数开始索引的,而被盗取会使得索引不完全 求被盗键盘的最小值 B 求w<=a, h<=b 且w/h = x/y ...

2018-09-17 08:03:18

阅读数 97

评论数 0

P2887 [USACO07NOV]防晒霜Sunscreen - 贪心

貌似这种区间贪心题多数是排序加堆来做。。。 使尽量多的奶牛被抹,需要用最贴近他下限的防晒霜去抹,考虑完他的下限是否可行之后,还要考虑那些要使用相同防晒霜的奶牛,应该优先分配给上限最低的 奶牛按下限,防晒霜按低排序后,对于每一款防晒霜,把下限符合奶牛的都放到堆里,找出上限最低的,抹上就好了 这...

2018-09-16 21:40:15

阅读数 39

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭