atcoder abc 309
AtCoder Regular Contest 164 F Subtree Reversi
洛谷传送门 AtCoder 传送门 非常好题目。 发现每个点颜色被反转的次数是固定的,为其深度(根结点深度为 \(0\))。于是可以看作是,一放棋子就得到分数。 那么先手取偶数层和后手取奇数层都会使先手得分,所以双方的目标都是尽可能多取偶数层的结点。 考虑若一开始有偶数层的叶子,那么当前的先手肯定会 ......
AtCoder Beginner Contest(abc) 309
B - Rotate 题目大意 给定一个n*n的矩阵, 要求把矩阵的最外围按照顺时针转动一个数据, 输出转动后的矩阵; 解题思路 数据不大, 暴力即可; 神秘代码 #include<bits/stdc++.h> #define int long long #define IOS ios::sync_ ......
abc203
C - Friends and Travel costs 168 模拟。 D - Pond 1622 在给定矩阵中找固定尺寸的子矩阵,使中位数最小。 中位数好像经常都是用这个性质吧。 二分答案,在01矩阵上用二维前缀和验证。 E - White Pawn 1750 \([0,2n]\times [0 ......
abc204
D - Cooking 832 物品分两组,使重量差最小 经典背包,容量为所有物品重量和的一半,最大化重量 E - Rush Hour 2 1710 给定图,每条边 \(u\to v\) 有参数 \(C,D\),若在 \(t\) 时刻从 \(u\) 出发,则能在 \(t+C+\lfloor \fra ......
[ABC256E] Takahashi's Anguish
题目 https://www.luogu.com.cn/problem/AT_abc256_e 图论题,是个环套树 发现环上的边要取掉一条(min),其他的不用取 https://www.luogu.com.cn/record/131488937 ......
[ABC176F] Brave CHAIN
[ABC176F] Brave CHAIN 洛谷:[ABC176F] Brave CHAIN Atcoder:[ABC176F] Brave CHAIN Problem hhoppitree 有 \(3n\) 张卡片,其中每张卡片上都写着 \(1\sim n\) 中的一个数,他会重复以下操作 \(n ......
abc205
B - Permutation Check 16 检查给定数组是不是一个排列 C - POW 63 判断 \(a^c\) 和 \(b^c\) 谁大(int 范围,\(c\ge 1\),\(a,b\) 可能是负数) c = c % 2 ? 1 : 2,然后特判相等的情况,最后直接做pow比较 D - ......
AT_abc260_e
给出 n 对点 ai ,bi ,在[1,m] 之间取一段区间。 当每一对点都有一个点在这个区间内时,这个区间合法。 求出不同长度的合法区间分别有多少个。 枚举 l, 右边r有个最小值R(l), 而 (l, j) j>r 之后的点都是合法点, 后面就是区间加,用差分维护 考虑这个 R (l) , 可以 ......
洛谷题解 | AT_abc321_c Primes on Interval
目录题目翻译题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1样例 #2样例输入 #2样例输出 #2样例 #3样例输入 #3样例输出 #3题目简化题目思路AC代码 题目翻译 【题目描述】 你决定用素数定理来做一个调查. 众所周知, 素数又被称为质数,其含义就是除了数字一和本身之外不能被其 ......
[ABC231E] Minimal payments 题解
题目传送门 一道贪心题。 感觉很裸啊,模拟赛时随便乱写了个暴力递归就能过。每次找最接近钱数 \(x\) 的面额 \(num\),如果比钱数少那么答案为剩下 \(x \bmod num\) 钱数的答案加上 \(x \div num\)。否则答案则为剩下 \(num-x\) 钱数的答案加上 \(1\)。 ......
[ABC234E] Arithmetic Number 题解
题目传送门 一道枚举题。 暴力枚举数字位数、首位、等差数列的公差即可。注意公差的枚举范围,并且需要看看末尾合不合法。顺便提一下,我是用字符串存储枚举的数字的,所以写了一个 check 函数代替大于号。 Code #include <bits/stdc++.h> using namespace std ......
[ABC118D] Match Matching 题解
题目传送门 一道 dp 题。 在 dp 之前,我们需要明确以下几个东西: 状态的表示,状态转移方程,边界条件跟答案的表示。 状态的表示 \(dp_i\) 表示恰好用完 \(i\) 根火柴能拼出来的最大数字。 状态转移方程 \[dp_i = \max\{j \times 10^{len(dp_{i-w ......
ABC323D题解
ABC323D Merge Slimes 题目简述 小 A 有 \(N\) 种橡皮泥。对于第 \(i\) 种橡皮泥,它的大小为 \(S_i\) 且一共有 \(C_i\) 个。 小 A 可以合成两个大小相同的橡皮泥,若这两个橡皮泥大小为 \(X\),则新和成的橡皮泥大小为 \(2X\)。 小 A 想知 ......
ABC325
T1:Takahashi san 模拟 代码实现 #include <bits/stdc++.h> using namespace std; int main() { string s, t; cin >> s >> t; cout << s << ' ' << "san"; return 0; } ......
abc206
C - Swappable 171 数组中不相等的数对数量 D - KAIBUNsyo 879 每次操作可以把数组中等于 \(x\) 的数全变成 \(y\),问变成回文数组至少需要几次操作 简单的不错的并查集模拟题 #include <bits/stdc++.h> using namespace s ......
ABC209E Shiritori 题解
ABC209E Shiritori 题解 原题:洛谷AT_abc209_e 分析 博弈,可重复选,一眼图论,将每个单词的前三个字符向后三个字符连边,并用后三个字符代表这个单词。 看一下样例。 5 eaaaabaa 1 2 eaaaacaa 1 3 daaaaaaa 4 5 eaaaadaa 1 4 ......
[ABC267F] Exactly K Steps
多次询问 给出x,给出任意点y满足 dis(x,y)==m 以直径端点为根,dfs 可以发现 至少有一个y 在这个路径上 https://www.luogu.com.cn/record/130467795 ......
AtCoder Regular Contest 167——B - Product of Divisors
题目很明显,给定 所有因数的积不断除以最多能除几次。 首先,很容易发现,对于每一对因子,都可以对答案得出B的贡献,设A的因子数目为n。 将A进行质因数分解,PBa1,PBa2,PBa3……PBam,那么因数个数就是质因子加一的乘积。 那么因子对数也就是前者一半。答案就是B乘因子对数除以二注意此处除操 ......
AtCoder Beginner Contest(abc) 308
B - Default Price 题目大意 小莫买了n个寿司, 现在给出m个寿司的名称和m+1个价格, 如果小莫买的其中一个寿司不在这m个寿司之中就用价格m0; 请问小莫买的寿司花了多少钱 解题思路 数据不大, 暴力哈希即可; 神秘代码 #include<bits/stdc++.h> #defin ......
[ABC207F] Tree Patrolling 题解
[ABC207F] Tree Patrolling 弱智 DP 题,设 \(f(i,j,0/1/2)\) 表示在点 \(i\),子树中有 \(j\) 个点被覆盖,且 \(i\) 点自身状态是未被覆盖/被自身覆盖/被某个儿子覆盖,然后树上背包更新就行了。 代码: #include<bits/stdc+ ......
Atcoder Beginner Contest 324 G Generate Arrays 题解-Treap
为了更好的阅读体验,请点击这里 题目链接 套上平衡树板子就能做的很快的题,然后因为是指针存树,因此交换只需要把序列大小较小的挨个拿出来插到相应的地方即可。复杂度 \(O(N \log^2 N)\)。 但是一定要记住 不可以直接使用 std::swap 交换包含带有指针的类的实例(如代码中的 Trea ......
AtCoder Regular Contest 167
Preface 补一下上周日的ARC,因为当天白天和队友一起VP了一场所以就没有精力再打一场了 这场经典C计数不会D这种贪心乱搞反而是一眼秒了,后面的EF过的太少就没看 A - Toasts for Breakfast Party 用一个类似于蛇形的放法就好了,比如对于\(n=9,m=5\),放法为 ......
AT_abc134_d Preparing Boxes题解
简述题意 这什么破翻译,看了 AtCoder 的英文才看懂。 给定一个长度为 \(n\) 序列 \(a\),要求构造一个数列 \(b\),使得对于任意 \(i\),满足: \(1 \le i \le n\) 将 \(b\) 序列下标为 \(i\) 的倍数的值相加使得这个总和模 2 等于 \(a_i\ ......
vscode log的问题 log前的abc
但存在一个问题,当第二次输入log的时候,会出现两个log选项。前面有abc标识的是因为你输了log这个单词,他自动帮你记录并且提示了。默认情况下。有abc标识的是排在前面的,这不是我们想要的,我们需要是下图这个顺序。 到设置里面搜索Snippet Suggestions,把下面的选项改为top就可 ......
Japan Registry Services (JPRS) Programming Contest 2023 (AtCoder Beginner Contest 324) 赛后总结
Japan Registry Services (JPRS) Programming Contest 2023 (AtCoder Beginner Contest 324) 赛后总结 可悲的是:我没来得及写题解。 T1 Same 秒切。 直接输入排一遍序再遍历即可。 #include <bits/s ......
比赛总结:Japan Registry Services (JPRS) Programming Contest 2023 (AtCoder Beginner Contest 324)
比赛:Japan Registry Services (JPRS) Programming Contest 2023 (AtCoder Beginner Contest 324) A-same 1.常规方法 int main() { int n; cin >> n; vector<int> s(n) ......
题解 ABC267F【Exactly K Steps】
Robin 有一棵树,他有 $m$ 次询问,每次询问他给你 $u,k$,你需要输出树上的一个节点 $v$ 满足 $dist(u,v)=k$,或者报告无解。
$dist(u,v)$ 表示树上 $u$ 到 $v$ 的最短路径的边数。$n\leq 10^5$ ......
AtCoder Regular Contest 066 F Contest with Drinks Hard
洛谷传送门 AtCoder 传送门 下文令 \(a\) 为原题中的 \(T\)。 考虑若没有饮料,可以设 \(f_i\) 表示,考虑了前 \(i\) 道题,第 \(i\) 道题没做的最大得分。转移就枚举上一道没做的题 \(j\),那么 \([j + 1, i - 1]\) 形成一个连续段。设 \(b ......
Atcoder Regular Contest 167
卡 B 下大分了,怎么回事呢。 A. Toasts for Breakfast Party 发现题意是让方差尽可能小,就是让 \(A\) 里的值尽可能接近。 所以从小到大排个序,把 \(A_{N,\dots,N-M+1}\) 依次放进 \(1,2,\dots,M\),再把 \(A_{N-M,\dot ......