beginner atcoder contest abc

[ABC276Ex] Construct a Matrix

没有题解,所以来写一篇。 Description 构造一个 $N\times N$ 的矩阵 $A$,其中 $A_{i,j}\in {0,1,2}$,要求同时满足 $Q$ 条限制。 每条限制形如:给定 $a,b,c,d,e$,要求 $A$ 满足 $\prod\limits_{i=a}^b\prod\l ......
Construct Matrix ABC 276 Ex

AT_abc106_d [ABC106D] AtCoder Express 2 题解

题目传送门 解题思路 区间 $dp$。 划分阶段:以左右城市之间的列车数量为阶段。 状态表达:设 $f_{i,j}$ 为城市 $i$ 与城市 $j$ 之间的列车数量。 状态转移: 由图可知,城市 $l$ 与城市 $r$ 之间的列车数量,就是城市 $l$ 与城市 $r-1$ 之间的列车数量与城市 $l ......
题解 106 AtCoder Express AT_abc

AtCoder Regular Contest 119 F AtCoder Express 3

洛谷传送门 AtCoder 传送门 很厉害的题! 考虑所有车站已确定,如何求 $0$ 到 $n+1$ 的最短路。设 $g_{i,0}$ 为只考虑 $0 \sim i$ 的点,到 $i$ 和它左边第一个 $\text{A}$ 的最短路,$g_{i,1}$ 同理。有转移: 若 $s_{i-1} = \t ......
AtCoder Regular Contest Express 119

AtCoder Regular Contest 119 D Grid Repainting 3

洛谷传送门 AtCoder 传送门 对每个红格的行和列连边,建出二分图。对于二分图中的每个连通块分别考虑。 大胆猜测对于每个连通块,我们都能够进行适当的操作,使得只有一行/一列没被操作(显然不能使所有行和列都被操作)。对应的方案就是随便取一棵生成树,把不被染白的那一行/列拎出来当根,然后自底向上,每 ......
Repainting AtCoder Regular Contest Grid

AtCoder Regular Contest 117 F Gateau

洛谷传送门 AtCoder 传送门 **差分约束算法:**给出 $m$ 个不等式形如 $x_{a_i} \le x_{b_i} + y_i$,求是否有解。 考虑把不等式看成图上的三角不等式 $dis_v \le dis_u + d$,连边 $(b_i, a_i, y_i)$,以 $x_i$ 最大的位 ......
AtCoder Regular Contest Gateau 117

2023 Hubei Provincial Collegiate Programming Contest题解 C F H I J K M

补题链接:https://codeforces.com/gym/104337 原文链接:https://www.eriktse.com/algorithm/1136.html M. Different Billing 签到题,写几个柿子然后枚举B或C即可。 #include <bits/stdc++ ......

AtCoder Regular Contest 112 C Calculator

洛谷传送门 AtCoder 传送门 很神奇但是经典的构造,学习一下。 注意到题目给的操作很像斐波那契。但是难点是如何将 $O(\log n)$ 个斐波那契数相加。 考虑一个操作序列 $4,3,4,3,...$(共 $m$ 个)。发现在第 $i$ 个操作之前给 $x$ 或 $y$ 加 $1$,等价于最 ......
Calculator AtCoder Regular Contest 112

Atcoder Grand Contest 059 E - Grid 3-coloring(转化+思维)

首先先是一步很猛的操作——将三染色视作构造一个矩阵使得相邻元素相差 $1$ 且每个元素 $\bmod 3$ 的值就等于其颜色。证明是显然的,我们按从上到下从左到右的顺序填数,可以归纳证明,对于一个相邻格子颜色互不相同的矩阵的填数方案,处于斜对角的两个格子上写的数要么差 $2$,要么相等,这样待填的这 ......
coloring 思维 Atcoder Contest Grand

[ABC151E] Max-Min Sums

2023-03-11 题目 题目传送门 翻译 翻译 难度&重要性(1~10):5 题目来源 AtCoder 题目算法 数学 解题思路 对于一个正数 $x,x\in A$ 一定会有 $C_{n}^{i}$ 次是作为集合中最大的元素,其中 $i$ 表示比 $x$ 小的数的个数,也一定会有 $C_{n}^ ......
Max-Min 151E Sums ABC 151

[ABC150F] Xor Shift

2023-03-10 题目 题目传送门 翻译 翻译 难度&重要性(1~10):6 题目来源 AtCoder 题目算法 KMP,Z函数 解题思路 首先是按位确定,令 $t(i,j)$ 表示 AA 序列向右移动 $j$ 位后异或某一个数能否等于 $B$ 序列,则如果所有 $t(i,q)\ \ (i\in ......
Shift 150F ABC 150 Xor

[ABC150E] Change a Little Bit

2023-03-10 题目 题目传送门 翻译 翻译 难度&重要性(1~10):5 题目来源 AtCoder 题目算法 数学,贪心 解题思路 显然 $C_i$ 越小的位越早被修改越好。所以我们将 $C_i$ 从小到大排序。对于任意的 $S$,答案都是一样的。我们依次考虑 $S$ 和 $T$ 的每一位是 ......
Change Little 150E ABC 150

AtCoder Regular Contest 122 D XOR Game

洛谷传送门 AtCoder 传送门 从高到低按位考虑。 设当前位有 $k$ 个 $1$。 如果 $k \bmod 2 = 0$,这意味着 Alice 如果选了一个数,Bob 可以选相同的数。发现可以分成 $(0,0),(1,1)$ 两组,递归下去即可。 如果 $k \bmod 2 = 1$,意味着答 ......
AtCoder Regular Contest Game 122

AtCoder Regular Contest 119 E Pancakes

洛谷传送门 AtCoder 传送门 感觉挺典的,~~为啥有 2500 啊(~~ 观察发现,反转序列对 $\sum\limits_{i=1}^{n-1} |a'i - a'{i+1}|$ 影响不大。具体而言,设反转了 $a_l \sim a_r$,记 $s = \sum\limits_{i=1}^{n ......
Pancakes AtCoder Regular Contest 119

[ABC149E] Handshake

2023-03-06 题目 题目传送门 翻译 翻译 难度&重要性(1~10):4 题目来源 AtCoder 题目算法 二分 解题思路 因为按照贡献从大到小握手一定是最优的,所以将 $a$ 排序后二分我们最后握手到的人的贡献(即第 $n^2-m+1$ 大的贡献值),最后输出时减去多算的即可。 完成状态 ......
Handshake 149E ABC 149

[ABC148F] Playing Tag on Tree

2023-03-04 题目 题目传送门 翻译 翻译 难度&重要性(1~10):5 题目来源 AtCoder 题目算法 最短路 解题思路 考虑到 T 想活得久, A 想尽早追上 T ,所以我们就将问题转化为在树上找一条最长链,使得 T 能比 A 先到达这条链。 所以我们就可以在树上跑两遍单源最短路,因 ......
Playing 148F Tree ABC 148

[ABC146F] Sugoroku

2023-03-03 题目 题目传送门 翻译 翻译 难度&重要性(1~10):5 题目来源 AtCoder 题目算法 贪心 解题思路 对于第 ii 个点,只要到达 $s_{i+1}\cdots s_{i+m}$ 中最后一个 $0$ 的位置。 但是这种方法求出的字典序肯定是最大的,但题目要求的是字典序 ......
Sugoroku 146F ABC 146

[ABC146E] Rem of Sum is Num

2023-03-03 题目 题目传送门 翻译 翻译 难度&重要性(1~10):4 题目来源 AtCoder 题目算法 数学 解题思路 先对整个序列求前缀和 $sum_k=\sum_{i=1}^{k}a_i$ 题目求有多少对 $(l,r)$ 满足 $sum_r-sum_l\equiv r-l \mod ......
146E ABC 146 Rem Num

[ABC145F] Laminate

2023-02-25 题目 题目传送门 翻译 翻译 难度&重要性(1~10):6 题目来源 AtCoder 题目算法 dp 解题思路 引子:积木大赛 可以发现当 $k=1$ 时,就是积木大赛。 该列比前一列高:此时会产生 $h_i-h_{i-1}$ 的贡献。 该列比前一列矮或相等:此时不会产生贡献。 ......
Laminate 145F ABC 145

[ABC145E] All-you-can-eat

2023-02-25 题目 题目传送门 翻译 翻译 难度&重要性(1~10):5 题目来源 AtCoder 题目算法 背包dp 解题思路 设 $dp_i$ 为最后一道菜在第 $i$ 时吃完的最大美味值。 所以得到式子:$dp_i=max(dp_{i-a_j}+b_j,dp_i)\ (a_j\le i ......
All-you-can-eat 145E ABC 145 All

2023 Hubei Provincial Collegiate Programming Contest

链接:https://codeforces.com/gym/104337 C 画个图看看,复杂度 $O(1)$。 C++ Code #include "bits/stdc++.h" using namespace std; using i64 = long long; int main() { io ......

ABC256E Kth Number题解

题目传送门 题意:给定 $p\le n$ 个值域为 $1\sim m$ 的数,你需要将其补充到 $n$ 个,每个数都在 $[1,m]$ 内独立随机。求最终第 $K$ 小数的期望值。$n,m\le 2000$ 看到这个问题,就容易想到枚举第 $K$ 位的值,计算概率(或者方案数)。首先将其给定的 $p ......
题解 Number 256E ABC 256

AtCoder Regular Contest 117 D Miracle Tree

洛谷传送门 AtCoder 传送门 第一步就没想到 可以考虑化简限制。设所有点按 $E_i$ 从小到大排序后顺序是 $p_1,p_2,...,p_n$。发现只需满足 $E_{p_{i+1}} - E_{p_i} \ge \operatorname{dis}(p_i, p_{i+1})$。证明是对于任 ......
AtCoder Regular Contest Miracle Tree

AtCoder Beginner Contest 231

A - Water Pressure #include<bits/stdc++.h> using namespace std; int main() { int n; cin >> n; printf("%.6lf\n" , n / 100.0 ); return 0; } B - Election ......
Beginner AtCoder Contest 231

Educational DP Contest

Educational DP Contest ATcoder_link 夯实基础的好东西 I 记录一下此时第 i 个有多少概率小于等于 j 的就可以了。 #include<bits/stdc++.h> using namespace std; const int N=3005; #define db ......
Educational Contest DP

ABC300 Editorial

哭了,还是写不了 Ex 的题解,~~因为不会~~ A - N-choice question 题意 给定 $a,b$ 和序列 ${c_n}$,求 $a+b$ 在 $c$ 中的下标。 分析 直接记录一下 $pos_{c_i}=i$ 就薄纱了。 code const int maxn(2e5 + 500 ......
Editorial ABC 300

AtCoder比赛记录(二)

这里记录的是这个账号的比赛情况。 ABC300 2023-4-29 Solved:7/8 0->1200 F(Medium-,1846) 给定由o和x组成的字符串$S$。将$S$复制$m$遍,然后将其中$k$个x改成o,求改完之后连续的o最多可能有多少个。 Solution:贪心。设最多能改完$t$ ......
AtCoder

AtCoder比赛记录(一)

这里记录的是这个账号的比赛情况。 ARC157 2023-2-25 Solved:4/6 2189->2216 C(Medium,1802) 给定一个XY矩阵,一条左上角到右下角的路径的分值定义为路径上连续两个Y的组数。求所有可能路径的分值的平方和。 Solution:经典DP。递推两个量,一个是到 ......
AtCoder

ABC240Ex

给定长为 $n$ 的 01 字符串 $s$, 求一个最大的 $k$, 使得能选出 $k$ 个形如 $[l_i,r_i]$ 的区间, 满足: $\forall i\in [2,k], l_i\gt r_{i-1}$. $\forall i\in [2,k]$, $s_{l_i\sim r_i}$ 的字 ......
ABC 240 Ex

AtCoder Beginner Contest 300

A - N-choice question (abc300 a) 题目大意 给定一个元素互不相同的数组$c$和 $a,b$,找到 $i$使得 $c_i = a + b$ 解题思路 直接for循环寻找即可。 神奇的代码 ```cpp #include using namespace std; usin ......
Beginner AtCoder Contest 300

abc252_d Distinct Trio 题解

这是数学题耶! 题意 给定一个整数 $n$ 和一个长度为 $n$ 的整数序列 $a$,求满足以下要求的三元组个数: $1 \leqslant i < j < k \leqslant n$。 $a_i \ne a_j$,$a_j \ne a_k$,$a_k \ne a_i$。 思路 先想正着做,好,不 ......
题解 Distinct Trio abc 252