水题乱做12

【CF 924F】Minimal Subset Difference 状态是这些数字形成的背包,用一个 bitset 表示,状态数很少,直接枚举 k 然后数位 dp

【ARC 094F】Normalization 结论很简单,长度 <=3 暴搜,>3 要求模 3 不变,然后还要有连续的相同的,特判一开始全相同和一开始没有连续的相同的

【ARC 090F】Number of Digits 分类讨论,f(l)<=7 暴力,f(l)>7 我们枚举个数,数字个数不超过 n/8。再观察一下,似乎可以不用分类讨论,可以 O(d(S)) 搞

【ARC 101F】Robots and Exits 把每个看成点,随便 dp 一下

【ARC 100F】Colorful Sequences 分类讨论,总的减去不合法的,分成三种情况,一种是所有有 A 的都合法,这个不合法的是 0;一种是 A 有重复的,这个是两边的 dp 的卷积;一种是 A 没有重复的,这个和 A 具体是什么无关,只和 m 有关

【ARC 087F】Squirrel Migration 简单容斥,钦定一些自己子树内匹配

【ARC 072F】Dam 这么简单的 F?单调队列一下即可

【ARC 069F】Flags 二分然后 2-sat

【ARC 102F】Revenge of BBuBBBlesort! 结论是,首先 a(i) 奇偶性和 i 相同,然后 a 的逆序对是 3 的倍数,然后 a 奇数位置的逆序对加 a 偶数位置的逆序对是 a 的逆序对的 1/3

【ARC 062F】Painting Graphs with AtCoDeer 如果一个点双是个环可以 Polya,否则可以任意打乱,还有单独一条边不再点双里的情况,讨论一下即可

【ARC 061F】Card Game for Three 考虑把每步是什么列出来,我们发现这个序列肯定是有 n 个 1,其中最后一个位置肯定是 1,然后中间有 2 和 3 混合,其中 2 的个数不超过 m,3 的个数不超过 K,然后我们枚举不是 1 的有多少,然后算答案,有个步骤要用到组合数行求和,区间是有性质的,可以直接递推

【ARC 112F】Die Siedler 考虑可以把权值移动到 1 这个位置,然后能到的权值和初始权值的差是 g 的倍数,然后有两个复杂度的做法,拼接一下

【AGC 052C】Nondivisible Prefix Sums 见过挺多次的套路,首先和不能是 mod 的倍数,然后把最多的那个变成 1 后满足 cnt1<=sum(mod-x)+mod-1 (x>1) ,dp 即可

【AGC 051C】Flipper 奇怪的充要条件,然后瞎贪心

【AGC 044D】Guess the Password 先问出每个字符的次数,然后归并的搞

【CF 833E】Caramel Clouds 有两种情况,选两个单独的,和选两个有重合的,简单维护一下

【CF 819E】Mister B and Flight to the Moon 规约构造

【AGC 052D】Equal LIS 如果 LIS 是偶数,我们可以分成 f(i)<=l/2 和 f(i)>l/2,这样每个都是 l/2,如果是奇数,充要条件是存在一个不在 LIS 里的长度为 (l+1)/2 的 IS

【LOJ 2168】「POI2011 R3 Day1」周期性 Periodicity 有点神奇,但很合理的字符串题

【AGC 045D】Lamps and Buttons 挺难的计数,要求的东西是有多少个长为 a+b+c 的排列,满足其中所有 [a+1,a+b] 所在环中有 [1,a] 中至少一个。怎么数呢,先放 a,然后把 b 个插入 a 中,然后再放 c,可以表示成 O(1) 的式子

【LOJ 553】「LibreOJ Round #8」MINIM 利用了数据随机,f(i) 表示异或和为 i 最少代价,数据随机,所以这个段数很少

【CF 914F】Substrings in a String bitset 直接过了,bitset 处理字符串匹配还挺不错的

【LOJ 3450】「USACO 2020.12 Platinum」Sleeping Cows 考虑第一个没有匹配的牛,比它大的牛棚肯定都要被匹配,可以直接 dp

【牛客 挑战赛57F】 LCT 维护直径

【LOJ 3513】「USACO 2021 US Open Platinum」Balanced Subsets 一行一行 dp,状态有最左边的列,最右边的列以及两边是往外扩展还是内扩展

【CF 1641F】Covering Circle 考虑给定点集求含有恰好 k 点的最小圆,我们二分一个半径,找有没有一个点被 >=k 的圆包含,如果有肯定在某个圆上,我们枚举这个圆,然后其它圆在这个圆上会是一个角度的区间,我们要看有没有一个位置被覆盖超过 k-1 次,这个复杂度是 \(O(n^2log)\),如果我们 shuffle 一下,枚举圆然后二分,这个复杂度是 \(O(n^2)\)。然后这个题我们每次加一个点,只保留最新的 l 个点,找到距离这个点不超过 2ans 的点 check 一下,这个点数很少。

【LOJ 3667】「USACO 2022.2 Platinum」Paint by Rectangles 数一数,时间太久,有点忘了,好像要欧拉公式,然后搞出连通块,还有个黑洞白洞

【LOJ 3683】「COCI 2022.3」Radio 维护相邻质因子,查询变成只要查询有没有区间在 l 到 r 之间

【AGC 057D】Sum Avoidance 考虑个数肯定是 (S-1)/2,然后 x 和 S-x 两个不能都取,于是我们贪心搞,找到最小的 d 满足 S%d!=0,然后定义 f(rem) 表示 %d=rem 的数字最小的是多少,f(rem) 是可以算的,然后二分一下就过了

【AGC 057C】Increment or Xor 根据 +1 和异或,我们可以联想到经典的倒着建 trie 的 trick,然后发现叶子是否操作是固定的,最后看看所有数字 xor 一个常数能不能变成正确的数列

【LG P7026】[NWRRC2017]Hidden Supervisors 贪心,尽可能多的没匹配的点优先

【LG P6898】[ICPC2014 WF]Metal Processing Plant 可以枚举最大边然后二分次大边 2-sat,复杂度是 O(n^4logn) 的,然后考虑有些最大边是不合法的,只有 O(n) 条可能的最大边,复杂度就是 O(n^3logn) 的了

【LG P3679】[CERC2016]二分毯 Bipartite Blanket V=L|R 存在 M,当且仅当 L 有饱和匹配,R 也有饱和匹配,然后两边独立了

【牛客 Wannafly挑战赛4 F】倍增并查集套路

【AGC 013D】Piling Up 简单 dp,只要稍微处理一下不要算重就好了,即钦定经过 0

【BZOJ 4671】异或图 钦定一些边不出现是可以做的,bell 数的枚举划分方案,然后算系数

【牛客 Wannafly挑战赛1 D】二分图边染色构造模板

【牛客 Wannafly挑战赛2 C】题意是二维矩形找最大的蝴蝶,我们在蝴蝶右上角算,找最小合法左上角

【牛客 Wannafly挑战赛2 E】类欧板子

【牛客 Wannafly挑战赛3 E】斜率优化 dp,一个点走到父亲的期望是 2sz-1

【牛客 Wannafly挑战赛3 F】dp 维护方案数,len的和,num的和,和len*num的和,状态里记录前缀 1 减前缀 0,并实时对 0 取 max

【牛客 Wannafly挑战赛4 E】二次剩余判有无解,就勒让德一下

【牛客 Wannafly挑战赛6 D】精妙构造,下面是题解原话

答案是这样的居民子集个数q重要度的和不足s,但加入任何一个新居民都将导致重要度的和大于等于s。必要:由于上面的集合重要度都不够,他们都至少缺一把锁。若不足q把锁,这些子集中必有两个u,t缺同一把锁l。把这两个子集u和t并起来,仍然缺l这把锁,无法开门,但现在子集的重要度已经达到s了,与题目要求矛盾.所以合法的解至少需要q把锁。充分:一共q把锁,每把锁上面各写一个这种居民的子集(互不相同)。一个居民持有大部分的钥匙:他持有所有上面的子集不包括自己的锁的钥匙。可以验证这样满足要求。注意到如果所有人加起来重要度都不够,则需要一把锁,无人有钥匙:对应全集为唯一满足上面条件的集合,不能加入任意一个居民(虚满足)。

【牛客 Wannafly挑战赛6 E】简单构造

【牛客 Wannafly挑战赛7 F】老鼠和洞模拟费用流模型,序列上

【牛客 Wannafly挑战赛10 E】sort之后前 K+1 个和后 K+1 个肯定有两个的中点是对称中心

【牛客 Wannafly挑战赛11 D】exKMP 一下

【牛客 Wannafly挑战赛11 E】单位根反演

【牛客 Wannafly挑战赛12 D】总的减去不合法的矩形,一个不合法的矩形在最左上的点算入,枚举一个之前的点,算

【LG P3349】[ZJOI2016]小星星 容斥一下

共 50 题

posted @ 2021-12-14 22:28  xay5421  阅读(163)  评论(0编辑  收藏  举报