Beginner
AtCoder Beginner Contest 300(E,F)
# AtCoder Beginner Contest 300(E,F) ## E (概率dp) [E](https://atcoder.jp/contests/abc300/tasks/abc300_e) 这个题意大致就是一开始有一个初始数$x$为$1$,然后我们有一个骰子,最后得到的点数概率一样, ......
AtCoder Beginner Contest 302
# A - Attack ```cpp #include using namespace std; #define int long long int32_t main() { int a , b; cin >> a >> b; cout using namespace std; #define i ......
AtCoder Beginner Contest 193 F Zebraness
[洛谷传送门](https://www.luogu.com.cn/problem/AT_abc193_f "洛谷传送门") [AtCoder 传送门](https://atcoder.jp/contests/abc193/tasks/abc193_f "AtCoder 传送门") 复习一下最小割。 ......
AtCoder Beginner Contest 302 H. Ball Collector 题解
[AtCoder Beginner Contest 302 H. Ball Collector](https://atcoder.jp/contests/abc302/tasks/abc302_h) 题意跳过。 可以视作将 $a_i, b_i$ 之间连了一条边,然后 $a_i, b_i$ 之间只能选 ......
AtCoder Beginner Contest 267 Ex Odd Sum
[洛谷传送门](https://www.luogu.com.cn/problem/AT_abc267_h "洛谷传送门") [AtCoder 传送门](https://atcoder.jp/contests/abc267/tasks/abc267_h "AtCoder 传送门") 直接暴力跑背包的复 ......
AtCoder Beginner Contest 302(E,F,G)
# AtCoder Beginner Contest 302(E,F,G) ## E(图,set) [E](https://atcoder.jp/contests/abc302/tasks/abc302_e) 这个题意大致为一开始给出$n$个点,没有一条边,后面陆续会有$q$次操作,以下两种方式 $ ......
AtCoder Beginner Contest 296
# [AtCoder Beginner Contest 296](https://atcoder.jp/contests/abc296/tasks) ## D ### 题意 给出n和m,问$1\leq i,j\leq n$,使得$ij\geq m$,求出这个乘积的最小值 ### 思路 这两个乘数至少 ......
Atcoder Beginner Contest ABC302 题解
# 代码 见此:。 # A Attack 直接计算 `a/b`,有余数的话答案加一。 # B Find Snuke 枚举每个点,向周围八个方向拓展,判断。 # C Almost Equal 全排列枚举字符串顺序,之后检查。 $O(n)$ 做法:咕。(应该有罢 # D Impartial Gift 双 ......
AtCoder Beginner Contest 301
# A - Overall Winner ```cpp #include using namespace std; #define int long long int32_t main(){ ios::sync_with_stdio(false); cin.tie(nullptr) , cout.t ......
AtCoder Beginner Contest 302 Ex Ball Collector
[洛谷传送门](https://www.luogu.com.cn/problem/AT_abc302_h "洛谷传送门") [AtCoder 传送门](https://atcoder.jp/contests/abc302/tasks/abc302_h "AtCoder 传送门") 考虑如果只询问一次 ......
AtCoder Beginner Contest 302 (G,Ex)
开大号 unrated 写了个 Ex 就去玩原神了。赛后写了下 G。 ### ABC302Ex 简单题。考虑一组询问咋做,把所有 $(A_i,B_i)$ 连边建图,显然答案是点数减去是树的连通块个数。 如何维护形态为树的连通块个数?可以用并查集维护,对每个连通块额外维护连通块内边数即可。 树上咋做? ......
AtCoder Beginner Contest 302
## [A - Attack (abc302 a)](https://atcoder.jp/contests/abc302/tasks/abc302_a) ### 题目大意 给定怪物的血量$a$和你每次攻击扣除的血量 $b$,问打多少次怪物才会死。 ### 解题思路 答案即为$\lceil \fra ......
AtCoder Beginner Contest 253(E,F)
AtCoder Beginner Contest 253(E,F) E (dp,前缀和) E 大意就是求满足以下要求的的序列的个数 $1$,满足$a_i$都在$[1,m]$的范围里面 $2$,满足$ \vert a_i-a_{i+1}\vert $ 大于$k$ 之前做过一个类似的题目,是绝对值小于$ ......
AtCoder Beginner Contest 200 F Minflip Summation
洛谷传送门 AtCoder 传送门 显然的策略:选择全部 $0$ 段变成 $1$,或选择全部 $1$ 段变成 $0$。 归纳可得一般性的结论:设字符串中 $s_i \ne s_{i+1}$ 的位置数为 $k$,答案为 $\left\lceil\frac{k}{2}\right\rceil$。 因为在 ......
AtCoder Beginner Contest 102 D - Equal Cut 题解
题意 AtCoder Beginner Contest 102 D - Equal Cut 给定一个数组,切3刀把他分成4份。要求求出4份子数组中的最大的数组和-最小的数组和的值最小。 思路 我们可以枚举第二刀,这样就把整个数组分为了 $L,R$ 两个部分。 如果想要让整体最小,那么第一刀一定尽量让 ......
AtCoder Beginner Contest 206(Sponsored by Panasonic)(E,F)
AtCoder Beginner Contest 206(Sponsored by Panasonic)(E,F) E(容斥,gcd) E 这个题大意就是给出一个$l$和一个$r$,寻找满足以下条件的一对数$(x,y)$的数量 $gcd(x,y)!=1$ $gcd!=x$并且$gcd!=y$(从这一 ......
AtCoder Beginner Contest 217 G Groups
洛谷传送门 AtCoder 传送门 不妨钦定组之间的顺序是最小值越小的组越靠前,这样可以给每个组按顺序编号。 设 $f_{i,j}$ 为考虑了模 $m$ 后 $< i$ 的数,目前有 $j$ 个非空组的方案数。 转移就是枚举模 $m = i - 1$ 的数新开了 $k$ 个组,设 $\le n$ 的 ......
AtCoder Beginner Contest 209(D,E)
AtCoder Beginner Contest 209(D,E) D(树,lca) D 这个题给出$n$个点,$n-1$条边,有两个人,一个人在$c$点,一个人在$d$点,两人以相同的速度朝着对方走来(并且都是按照最短路的走法),问这两个人相遇是在点上,还是在路上 这一题意很好知道,就是判断这两点 ......
AtCoder Beginner Contest 152
Flatten 给定$n$个正整数$a_i$,,现在让你求出$n$个整数$b_i$,使得任取$1\le i < j \le n$,$a_ib_i=a_jb_j$始终成立,请你求出$\sum b_i$的最小值,答案对$1e9+7$取模 $1\le n \le 10^4$ $1 \le a_i \le ......
Monoxer Programming Contest 2022(AtCoder Beginner Contest 238)(E,F)
Monoxer Programming Contest 2022(AtCoder Beginner Contest 238)(E,F) E(图) E 这个题大意就是给你一段区间和,问你可以根据这个区间和得到从$1$到$n$的和 这个题都说是一个很明显的图论题,但是我一开始真的没看出来,看来是练习不够 ......
AtCoder Beginner Contest 242
A - T-shirt #include <bits/stdc++.h> using namespace std; int32_t main(){ double a , b , c , x; cin >> a >> b >> c >> x; if( x <= a ) cout << "1.00000 ......
AtCoder Beginner Contest 285(B,D,E,F)
AtCoder Beginner Contest 285(B,D,E,F) B (暴力,非二分) B 这道题其实很简单,但是我在$vp$的过程,有了一个错误的认识,纠正一下 那就是,我把这个当成了一个二分题,并且还有点坚定不移,后来细想,发现不对 二分,适用于那种边界分明的那种题(左边一定是符合条件 ......
AtCoder Beginner Contest 300
A - N-choice question #include<bits/stdc++.h> using namespace std; int read() { int x = 0, f = 1, ch = getchar(); while ((ch < '0' || ch > '9') && ch ......
AtCoder Beginner Contest 242(D,E)
AtCoder Beginner Contest 242(D,E) D(二叉树搜索) D 题目大意就是首先给你一个字符串,代表$S^0$,然后我们可以操作得到$S^1,S^2$等等 我们可以知道$S^i$是拿$S^(i-1)$经过一系列替换而来的,因为这个字符串只有三种字符串,$A,B,C$,这个替 ......
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 ......
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 ......
AtCoder Beginner Contest 159
AtCoder Beginner Contest 159 https://atcoder.jp/contests/abc159 EF 是打基础的好题 D - Banned K #include <bits/stdc++.h> #define ll long long using namespace ......
AtCoder Beginner Contest 158
AtCoder Beginner Contest 158 https://atcoder.jp/contests/abc158 基础不牢,地动山摇 D - String Formation 一个小小的STL应用 #include <bits/stdc++.h> #define ll long lon ......
Atcoder Beginner Contest 299 G
对于要打印的 $B$,我们首先尝试确定 $B_1$。 让 $f(x) (1≤x≤M)$ 是最大的 $i$,使 $A_i = x$。 对于 $r:=\underset{{{1≤x≤M}}}{\min}f(x)$,我们可以证明 $B_1$ 是 $A_1 ,A_2 ,...,A_r$ 中的一个(否则,$B ......
AtCoder Beginner Contest 299
A - Treasure Chest (abc299 a) 题目大意 给定一个包含 |*.的字符串,其中|两个,*一个,问*是否在两个|之间。 解题思路 找到两个|的下标$l, r$以及 *的下标$mid$,看看是否满足 $l < mid < r$即可。 神奇的代码 ```cpp #include ......