atcoder equal 100d arc
arc133,arc134,arc135题解
## ARC133 A-E ### A Erase by Value 扣掉一个数当且仅当这个数后面有更小的数。特判单增即可。 ### B Dividing Subsequence 相对比较有启发性。发现有倍数关系的数对只有 $O(n\log n)$ 对,于是可以把对应下标攒成一堆二元组,于是一个合法 ......
arc130,arc131,arc132题解
## ARC130 A-D ### A Remove One Character 对每个连续块分别处理即可。 ### B Colorful Lines 非常经典的题目,对于每一行每一列记录最后出现的颜色并计算贡献即可。 ### C Digit Sum Minimization 有点细节。枚举最后两个 ......
ARC 157 F Sol
嫌弃讲题人的我,准备好好写一篇题解。 [link to problem](https://atcoder.jp/contests/arc157/tasks/arc157_f) 观察数据范围:$1\le N\le 50$。 如果是 $20$,想到 $2^{20}$;如果是 $40$,想到 $2^{40 ......
【题解】[ARC158C] All Pair Digit Sums
[传送门](https://www.luogu.com.cn/problem/AT_arc158_c) ## 题目分析 我们可以先从简单一点的情况开始分析,如果现在 $a_{[i]},a_{[j]}$ 都**不会进位**,那么最后的 $f(a_{[i]}+a_{[j]})=f(a_{[i]})+f( ......
CF1656H Equal LCM Subsets
[题面传送门](https://www.luogu.com.cn/problem/CF1656H) 首先有一个暴力的想法:依次查看左边每个数,对于左边每个数,计算右边未被删除的点与这个点的 $\gcd$ 的 $LCM$,如果这个 $LCM$ 等于当前这个数,说明这个点可以被左边的 $LCM$ 整除, ......
AtCoder-ABC-309 C - Medicine
# [C - Medicine](https://atcoder.jp/contests/abc309/tasks/abc309_c) ## 题目大意: 给 n 种药,第 i 种药吃 $a_i$ 天,每天 $b_i$ 粒。问最早在第几天,当天要吃的药 ≤ K 。 $1 数组,储存 。数组大小为 n ......
AtCoder-ABC-267 C - Index × A(Continuous ver
# [C - Index × A(Continuous ver.)](https://atcoder.jp/contests/abc267/tasks/abc267_c) ## 题目大意: 给定n个数($a_1,a_2...a_n$),从中选连续m个数,这m个数的和为:$\sum_{i=1}^mi* ......
ARC159
# ARC159 前面做过一遍,效果不佳,再来一遍 ## A 最优化问题,考虑什么情况最优 / 不优,猜测 $x$ 至多一步到 $y$ 所在的方阵中。证明考虑如果 $x$ 到其他点,可以到 $y$ 所在方阵中对应的点,一定不劣 ## B 每次减去 $\gcd$,关注 $\gcd$ 变化的条件。容易发 ......
ARC 做题记录
又来开新坑了 ~~建议改为ATC看题解记录~~ ## [[ARC103F] Distance Sums](https://www.luogu.com.cn/problem/AT_arc103_d) $tag$:构造,树的性质 [sol](https://www.luogu.com.cn/blog/c ......
ARC160
## B 考虑题目的三个条件,只需要满足最大的两个数的乘积小于等于 $n$ 。$x,y,z$ 的大小关系无所谓,分讨两种情况 $x=y\ge z$ 和 $x>y\ge z$,分别枚举 $x,y$ 即可,复杂度 $\mathcal{O}(T\sqrt{n})$ ## C 计数,本来是对 $a$ 计数, ......
ARC161
## ARC161 ### A 排序后直接奇偶分类地填即可 ```cpp #include using namespace std; const int MAXN=2e5+5; int n; int a[MAXN]; int b[MAXN]; int main() { // freopen("dat ......
CF1188D Make Equal 题解
## 题意 给定 $n$ 个数 $a_1, a_2, \cdots, a_n$,每次操作可以给其中的一个数加上 $2$ 的非负整数次幂。求最小的操作次数,使得这 $n$ 个数相等。 ## 题解 首先考虑如何计算操作次数,设 $maxa = \max\limits_{i = 1}^{n} a_i$,如 ......
[ARC096E] Everything on It 题解
## 题意 对于集合 ${1,2,\cdots,n}$,求它的子集族中,有多少个满足: 1. 任意两个子集互不相同; 2. $1,2,\cdots,n$ 都在其中至少出现了 $2$ 次。 $n \le 3000$,答案对 $M$ 取模。 ## 题解 第一个限制形同虚设,下面着重考虑第二个限制。考虑到 ......
CF1188D Make Equal
### 题目大意 给出 $n$ 个数字 $a_1,a_2,\dots,a_n$,每次操作可以给其中一个数加上 $2$ 的非负整数次幂。求最少的操作次数,使得这 $n$ 个数相等。 ### 思路 记 $b_i = \max\limits_{1 \leq k \leq n}{a_k} - a_i$,这道 ......
[ARC125D] Unique Subsequence
设 $pre_i$ 表示在 $i$ 之前最后一个和 $i$ 相同的数的位置,$dp_i$ 表示第 $i$ 个数为结尾的序列的合法方案数。 对于 $pre_i = 0$,即在 $i$ 之前不存在与 $i$ 相同的数,$dp_i$ 由 $\left[ 1,i - 1 \right]$ 转移过来。由于这个 ......
[ARC126C] Maximize GCD
设 $a_x$ 为数列 $a$ 中的最大值。 一般来说,与其处理 $x | \gcd(A_1,\dots,A_N)$ ,处理 $x = \gcd(A_1,\dots,A_N)$ 更加容易。这是因为后者能够被分解为各个元素:$\forall i,x | A_i$。 因此,我们将解决下面这个问题而不是原 ......
[ARC125C] LIS to Original Sequence
首先考虑 $k = 1$,唯一的方案就是倒序输出 $1$ 到 $n$。 我们可以想到,这道题的方法是向已经确定的序列 $A$ 中插入其他数。 对于一个数 $x(x #include #include using namespace std; const int N = 200500; int n,k ......
JavaSE--Object类中一些方法:toString、equal、finalize、hashCode
1、toString方法 // 源码 public String toString() { return this.getClass().getName() + "@" + Integer.toHexString(hashCode()); } toString方法一般都是要重写的,是要越简洁越好,可 ......
AtCoder Beginner Contest 314
# [AtCoder Beginner Contest 314 - AtCoder](https://atcoder.jp/contests/abc314) ## [A - 3.14 (atcoder.jp)](https://atcoder.jp/contests/abc314/tasks/abc ......
[ARC126C] Maximize GCD 题解
## 题意 给定一个序列 $A$,每次操作可以使 $A_i + 1$($i \in \left[1, n\right]$,$K$ 次操作的 $i$ 可以不同),最多可以做 $K$ 次。问 $\gcd{A_1, A_2, ..., A_n}$ 的最大值。 ## 题解 首先,如果 $K$ 可以把当前序列 ......
[ARC126D] Pure Straight 题解
## 题意 给定一个有 $N$ 个正整数的序列 $A=(A_1,A_2,\cdots,A_N)$,且 $A_i \in \left[1,K\right]$。 你可以对这个序列做如下操作若干次。 > 交换两个相邻的元素,也就是选出 $i$ 和 $j$ 满足 $\lvert i - j\rvert = ......
AtCoder Beginner Contest 314
# [AtCoder Beginner Contest 314 - AtCoder](https://atcoder.jp/contests/abc314) ## A 3.14 ```c++ void solve() { string s = "3.1415926535897932384626433 ......
ARC129C 题解
[problem](https://www.luogu.com.cn/problem/AT_arc129_c) & [blog](https://www.cnblogs.com/liangbowen/p/17628395.html)。 提供一种不一样的做法喵。 考虑原问题的逆问题。这个很典,直接前缀 ......
ARC162E
## ARC162E ### A 简单分类讨论即可 ```cpp #include using namespace std; const int MAXN=1e3+5; int T; int n; int P[MAXN]; int main() { // freopen("date.in","r", ......
AtCoder Beginner Contest 314 A - Ex题解
# AtCoder Beginner Contest 314 ## A - 3.14 嗯,你可以用string 存小数点后的... ## B - Roulette 对于每一个金额,用个vector存 pair 存一个人赌了多少,以及是哪一个人 。 ## C - Rotate Colored Subs ......
How to compare two linked lists are equal in Python All In One
How to compare two linked lists are equal in Python All In One
在 Python 中如何比较两个链表是否相等
......
Atcoder Beginner Contest 314
# 比赛情况 A 题直接按照题意用字符串输出就行了,很快切掉。 B 题按照题意模拟,但是各种 WA,吃了三发没过先去看 C。 C 题依然是模拟,这道题比较好写一次就过了,回去调 B。 B 题再吃了 3 发罚时终于过了。 先是没有特判输出 0 导致 `vector` 为空 WA/RE。 然后没有注意要 ......
【Tricks,典】[ARC085F] NRE
一眼顶针,鉴定为 **implement** 不足,我写不出来。 先通过 Trick 转化 $a_i = 0 \to -1,a_i = 1 \to 1$。 那么显然把 $[l, r]$ 全部摊为 1 的贡献就是 $a_{l \to r}$。转化为 n - 最大贡献。 然后我们可以转化以下。 $$f_ ......
AtCoder Beginner Contest 214
AtCoder Beginner Contest 214 - AtCoder [ABC214D] Sum of Maximum Weights ( 典 ) 题意:给出一颗 N - 1 条边的树,求树上任意两点间路径上的最大值的和 这种问题考虑每条边单独看贡献,但是刚开始没太想明白怎么计算贡献,后面看 ......