题解at_arc 111 arc

CF213E Two Permutation 题解

CF213E Two Permutations 题解 题意: 给出两个排列$a,b $,长度分别为 \(n,m\),你需要计算有多少个 $ x $,使得 \(a_1 + x,a_2 + x,...a_n + x\) 是 \(b\) 的子序列。 \(n \leq m \leq 2 \times 10^ ......
题解 Permutation 213E 213 Two

CF1500F Cupboards Jumps 题解

题目链接 点击打开链接 题目解法 感觉是一个融合了许多技巧的题,很巧妙 题目要求 \(\max(h_i,h_{i+1},h_{i+2})-\min(h_i,h_{i+1},h_{i+2})=w_i\),这可以转化成另一个只和两项有关的形式为:\(\max(|h_i-h_{i+1}|,|h_i-h_{ ......
题解 Cupboards 1500F Jumps 1500

[ARC141C] Bracket and Permutation

考虑假设已知括号序列 \(s\),如何求出 \(p,q\)。 对于求 \(p\),考虑从 \(s_1\) 到 \(s_n\) 逐个往里放,如果能放就直接放,肯定不劣,否则就从后面抽最近的左括号放过来,然后继续放。不难证明不存在更优方案,对于 \(q\) 同理。 接下来我们发现,如果 \(p\) 中存 ......
Permutation Bracket 141C ARC 141

[ARC135D] Add to Square

不妨将棋盘黑白染色,并将黑色格子上的数取反。对应地,把操作修改为将某个 \(2 \times 2\) 区域地黑格子 \(-x\),白格子 \(+x\) 后答案与原问题相同。于是我们考虑这个新问题的解(不难发现新问题和原问题的解集是一一对应的)。 对于新问题,修改显然不会影响行或列的和。实际上只要对应 ......
Square 135D ARC 135 Add

[ARC106F] Figures 题解

题目链接 点击打开链接 题目解法 这么神仙的推式子题 看到生成树计数,第一反应是 \(prufer\) 序列 考虑在 \(prufer\) 序列上搞这个东西 可以得到 \(ans=\sum\limits_{\sum\limits_{i=1}^n d_i=n-2}\binom{n-2}{d_1,d_2 ......
题解 Figures 106F ARC 106

AtCoder Beginner Contest 332 题解

A - Online Shopping 题目链接 Atcoder Luogu 简要题意 共有 \(n\) 件商品,第 \(i\) 件商品的价格为 \(p_i\) 日元,数量为 \(q_i\) 件。 除了购买商品所需的的钱数,还要支付运费:如果所买商品的总价小于 \(s\) 日元,那么要支付运费 \( ......
题解 Beginner AtCoder Contest 332

[ARC132E] Paw

最终状态自左至右一定形如 <<< >>> ,即中间有一段和原序列相等,左边都是左箭头,右边都是右箭头的形式。 证明考虑如果要保留原序列 \([l,r]\) 一段(显然 \([l,r]\) 中不含 .),那么设位于 \(l\) 以左且距 \(l\) 最近的前两个点为 \(i,j\)(满足 \(i>j\ ......
132E ARC 132 Paw

[ARC133B] Dividing Subsequence

Dividing Subsequence 这道题与最长公共子序列类似,可以先去水一水那道题。 题意 本题就是让你从 \(p\) 里面选出一个子序列 \(b_i\) 和 \(q\) 里面选出一个子序列 \(a_i\),我们要使 \(b_i\) 是 \(a_i\) 的倍数。 解法 本题直接用动态规划,是 ......
Subsequence Dividing 133B ARC 133

[ARC132E] Paw

题意 给定一个字符串 \(S\)。 每次等概率随机选择一个为 \(.\) 的位置,随机向左或者向右移动。 走过的位置全部覆盖成 \(<\) 或 \(>\)。 Sol 注意到最终的状态一定是 \(<<<<< ... >>>>>\)。 考虑 \(dp\) 出前缀和后缀的概率。 设 \(f_i\) 表示已 ......
132E ARC 132 Paw

[ARC132E] Paw

题目链接 考虑最后形态,一定是有某一个区间 \([l,r]\) 保持初始的样子, \(l\) 前面都是 <,\(r\) 后面都是 >。 这个区间一定是某两个相邻圆点的位置。设 \(f_i\) 为前 \(i\) 个数全部被覆盖成 < 的概率。设 \(x\) 为 \(l\) 前面圆点的数量,\(y\) ......
132E ARC 132 Paw

[ARC169E] Avoid Boring Matches

题解链接 非常厉害的一道题。 考虑无解是什么情况? R 的个数超过 \(2^{n-1}\) 先考虑如何判定。从前往后考虑,如果遇到一个 B,那么如果后面有 R,就选最靠前的 R,否则选最靠后的一个 B.如果遇到 R,就选最靠后的一个 B。 但是这个判定很繁琐。我们考虑求出一个合法序列,使得他的 B ......
Matches Boring Avoid 169E ARC

ARC168E

题面 给定长度为 \(n\) 的数列 \(\{a_i\}\) 和两个参数 \(k, s\),将 \(\{a_i\}\) 划分成 \(k\) 段,最大化 和 \(\geq s\) 的段数。 \(1 \leq k \leq n \leq 250000, 1 \leq A_i \leq 10^9, 1 \ ......
168E ARC 168

luogu P9753题解

题意描述 有一个字符串, 请你求出有多少个字串可以经过若干次, 使它变成空串 其中每次操作可以从字符串中删除两个相邻的相同字符,操作后剩余字符串会拼接在一起。 ## 思路1 可以枚举左端点, 再枚举右端点, 一边枚举一边判断是否合法 时间复杂度 $O(n^2)$ 空间复杂度 $O(n)$ ## 思路 ......
题解 luogu P9753 9753

ARC165E

题面 给一棵 \(n\) 个节点的树和一个整数 \(K\)。每次操作,等概率随机选一个所在连通块大小大于 \(K\) 的点,并删掉这个点和与之相连的所有边。重复操作直到图上所有连通块大小不超过 \(K\),求期望操作次数,答案对 \(998244353\) 取模。 \(K< n\le 100\) 。 ......
165E ARC 165

ARC166 B Make Multiples 题解

Link ARC166 B Make Multiples Question 给出 \(N\) 个整数, \(A_1...A_N\) ,还有三个数 \(a,b,c\) 我们可以给 \(A_i\) 加上 \(1\) 需要使得数组 \(A\) 满足,存在一个数是 \(a\) 的倍数,一个数是 \(b\) ......
题解 Multiples Make ARC 166

CF1899 C Yarik and Array 题解

Link CF1899 C Yarik and Array Question 给定一个数组,求数组中连续子数组之和的最大值,但要求子数组必须满足:相邻两项奇偶性不同 输出最大总和 定义 \(F[i]\) 为以 \(i\) 为终点的连续子串的最大加和 \(F[i]\) 初始为 \(a[i]\) 如果 ......
题解 Array Yarik 1899 and

CF1899 E Queue Sort 题解

Link CF1899 E Queue Sort Question 给出一个序列 \(\{a\}\) ,可以进行一种操作:把第一个数放到最后,然后向前移,直到前面的那个数比它小为止 求把序列变成非降序列的次数 Solution 先来考虑无法变成非降序列的情况 如果第一个数最小,在一次操作后,第一个数 ......
题解 Queue 1899 Sort CF

CF1764H Doremy's Paint 2 题解

题目链接 先断环成链,由于对于多组询问不好一起处理,我们先考虑单组询问的处理方式。 一个很暴力的想法是每次模拟题目要求的操作并且最后数颜色,我们这是在通过下标进行操作最后再数颜色,而很多对于下标的操作都是不必要的,考虑直接枚举颜色进行判定。 对于每种颜色,它对于最后答案有贡献当且仅当它可以存活到那个 ......
题解 Doremy 1764H Paint 1764

CF1901 D Yet Another Monster Fight 题解

Link CF1901 D Yet Another Monster Fight Question 现在给你一堆怪物,你拥有法术(一个法术可以连续攻击这n个所有怪物),你可以选择任意一个怪物作为法术的第一个攻击目标(伤害为 \(x\) ),然后除了第一个攻击目标可以任意,其他攻击目标只能为曾经攻击目标 ......
题解 Another Monster Fight 1901

UVA1658 Admiral 题解

Link UVA1658 Admiral Question 给出一个图,找出 \(1 \sim n\) 的两条,使得路径和最小 Solution 可以把点拆开,把除了 \(1\) 和 \(n\) 的点 \(i\) ,拆成 \(i\) 和 \(i'\) ,\(i\) 到 \(i'\) 连一条费用为 \ ......
题解 Admiral 1658 UVA

P2341 受欢迎的牛 G 题解

Link P2341 [USACO03FALL / HAOI2006] 受欢迎的牛 G Question 牛栏中有 \(N\) 头奶牛,和一些 \(M\) 对爱慕关系,A->B 表示 A 爱慕 B。每个奶牛都喜欢自己,被所有奶牛喜欢就是一头明星奶牛,求明星奶牛的数量 Solution 考虑一个强连通 ......
题解 P2341 2341

题解 QOJ1359【Setting Maps】 / accoders::NOI 5682【apers】

https://qoj.ac/contest/506/problem/1359 problem 给定一张大小为 的有向图 。现在告诉你敌军大本营在节点 \(s\) 和友军基地在节点 \(t\)。你需要在每个点上放置一定数量的APERS bounding mine来杀伤敌方步兵。 为了达成战术效果,你 ......
题解 accoders Setting apers 1359

题解 QOJ1173【Knowledge Is...】 / accoders::NOI 5681【interval】

https://qoj.ac/contest/537/problem/1173 problem 给定 \(n\leq 10^6\) 个区间,你需要求出能够最多选出多少对区间,使得两个区间不交(区间为闭区间)。要求一个区间最多属于一对选出的区间。 solution 这是一般图匹配问题的特殊情况,所以放 ......
题解 Knowledge accoders interval 1173

P5048 [Ynoi2019 模拟赛] 题解

题意 给定 \(n\) 个数,有 \(m\) 个询问,每个询问给定 \(l\) 和 \(r\),求出区间 \(l\) 到 \(r\) 中的最小众数出现次数,强制在线。 数据范围:\(n\le 500000\),空间限制:\(62.5MB\)。 思路 这道题的弱化版是 蒲公英,这道题加强的地方在于数据 ......
模拟赛 题解 P5048 5048 2019

P4180 [BJWC2010] 严格次小生成树 题解

原题链接:P4081 题意 给定一颗 \(n\) 个点 \(m\) 条边的树,求这棵树的严格次小生成树。 严格次小生成树指:边权和大于最小生成树,且边权和最小的生成树。 思路 首先可以用克鲁斯卡尔求出这棵树的最小生成树,然后考虑用类似于反悔贪心的思路来做。 对于每一条不在最小生成树中的边 \(u \ ......
题解 小生 P4180 4180 2010

CF1842E Tenzing and Triangle 题解

题意不多赘述。 思路 如果两个所选的三角形有重合部分的话,那么这种情况肯定是不会出现的。因为如果把这两个三角形合成一个大三角形的话,不仅覆盖面积会增大,而且花费的代价还不会多。 于是我们可以想到用 dp 来解决,设 \(dp_{i}\) 表示删完横坐标为 \(0\) 到 \(i\) 中的点的最小代价 ......
题解 Triangle Tenzing 1842E 1842

[ABC304Ex] Constrained Topological Sort 题解

题意 给定一张有向图 \(G\),有 \(n\) 个点和 \(m\) 条边,问是否存在一种拓扑序的排列 \(P\) 使得 \(l_{i} \le p_{i} \le r_{i}\)。 思路 首先对于一条边 \(u \to v\),如果限制满足 \(r_{v}\le r_{u}\) 或者 \(l_{v ......
题解 Constrained Topological Sort ABC

【题解】AtCoder abc322_f Random Update Query

传送门:https://atcoder.jp/contests/abc332/tasks/abc332_f 容易发现,对于一个位置 $i$,$A_i$ 的最终值是由对 $i$ 的最后一次赋值操作决定的;因此,将所有操作按时间顺序倒过来考虑,则由第 $j$ 次操作决定 $A_i$ 最终值的概率为"在第 ......
题解 AtCoder Random Update Query

【题解】AtCoder abc332_g Not Too Many Balls

传送门:https://atcoder.jp/contests/abc332/tasks/abc332_g 看完题,第一眼反应为最大流。 建模方式为:以颜色为左部点,盒子为右部点,源点 $S$ 向颜色 $i$ 连一条容量为 $A_i$ 的边,盒子 $j$ 向汇点 $T$ 连一条容量为 $B_j$ 的 ......
题解 AtCoder Balls Many 332

AtCoder Regular Contest 169 (ARC169)

怎么有人 ARC A 卡了半天的? A. Please Sign 考虑 \(i\) 位置上的数,下次它被加到 \(P_i\),再下次被加到 \(P_{P_i}\),因为这个序列有性质 \(P_i<i\),这样加若干轮一定会到达 \(1\)。 令所有的 \(i\) 向 \(P_i\) 连边,则这是一棵 ......
169 AtCoder Regular Contest ARC