rounding maximum 1857b cf

[LeetCode] 1186. Maximum Subarray Sum with One Deletion

Given an array of integers, return the maximum sum for a non-empty subarray (contiguous elements) with at most one element deletion. In other words, y ......
LeetCode Deletion Subarray Maximum 1186

CF1843E 二分+前缀和

题意: 给定一个长度为n且均为0的数组,q次单点修改(从0改为1),以及m个基于该数组的区间。 规定好区间为:区间内1的个数严格大于0的个数。 上述m个区间若存在一个好区间则为合法,问按顺序进行q次单点修改过程中最早出现合法的单次修改编号,若无则输出-1。 马后炮思考: 对于m个区间,其实际关系是无 ......
前缀 1843E 1843 CF

CF1411G No Game No Life

猜它是一个 multi-sg,只用算出每个位置的 sg 值。不过注意到这是一个图,你要求 mex 肯定不会太大,毛咕咕一下不会超过 $\sqrt{m}$。并且根据均摊,你求 mex 的复杂度是 $O(m)$ 的。接下来相当于你有一个数 $v$ 每次选一个点异或上它的 sg 值,求最后是 $0$ 的概 ......
1411G 1411 No Game Life

CF1144G Two Merged Sequences

# CF1144G Two Merged Sequences ## 题意 现在给你一个长度为$n$的序列 你要把它拆成一个严格递增序列和一个严格递减序列 如果不可行输出$NO$ 如果可行输出$YES$并输出每个数属于递增序列还是递减序列 ## 题解 感觉脑子瓦特了,感觉这个 $dp$ 的状态设计是比 ......
Sequences Merged 1144G 1144 Two

SMU Spring 2023 Contest Round 7

A. Programming Contest 签到题. 输入输出读完应该就懂了: 从y1枚举到y2,若枚举的年份不在停办年份里则答案加一 void solve() { int n,m; cin >> n; vector<int> a(N),year(N); cin >> m; for(int i = ......
Contest Spring Round 2023 SMU

CF603E Pastoral Oddities

# CF603E Pastoral Oddities ## 题意 给定一张 $n$ 个点的无向图,初始没有边。 依次加入 $m$ 条带权的边,每次加入后询问是否存在一个边集,满足每个点的度数均为奇数。 若存在,则还需要最小化边集中的最大边权。 ## 题解 感觉自己找性质的能力还是太弱了。 首先有一个 ......
Pastoral Oddities 603E 603 CF

「解题报告」CF757G Can Bash Save the Day?

好好好。 求一个点到一个集合内点的距离和,这相当于在考虑若干条路径的长度,我们可以考虑使用点分治,建出点分树,这样每次查询时只需要对于这个点到根上的每个分治中心,找到所有经过这个中心的路径和即可。容易拆成每个点到分治中心的距离之和加上点数乘分治中心到查询点的距离,那么我们直接拿前缀和维护一下这个东西 ......
报告 757G Bash Save 757

CodeTON Round 5 (Div. 1 + Div. 2, Rated, Prizes!) C. Tenzing and Balls

一开始以为是贪心,后来发现不好贪于是选择了dp,但是dp有个小细节没注意到,后面wa了几发 我们以状态来分,f[i]表示考虑i的最大区间合长度,每次转移的时候考虑两种情况,一种是a[i]前面有一样的数字,比较选了a[i]和不选a[i]两种情况下的最大值,还有一种就是a[i]为第一个出现的数字则选区间 ......
Div CodeTON Tenzing Prizes Balls

CF Round 881 (Div. 3)

# CF Round 881 (Div. 3) > Div. 3 果然简单,虽然但是,我还是有 1 道题没有想出来。 ## A.Sasha and Array Coloring 排序双指针向内即可。 ## B.Long Long > 好啊,就是这道题没想出来。 `Virtual Contest` 上 ......
Round 881 Div CF

CF1393E2 Twilight and Ancient Scroll

显然有一个 $|S|\log |S|$ 的 dp 做法,但是瓶颈在给字符串排序。也就是真正的瓶颈在于求 lcp。AFewSuns 给出了一种不需要科技的做法,orz。 第一个排序的部分,令 $t_{i,j}$ 代表第 $i$ 个字符串去掉第 $j$ 个字符后的字符串,要给所有 $t_{i,j}$ 排 ......
Twilight Ancient Scroll 1393E 1393

Educational Codeforces Round 150 (Rated for Div. 2) A-E

[比赛链接](https://codeforces.com/contest/1841) # A ## 代码 ```c++ #include using namespace std; using ll = long long; bool solve() { int n; cin >> n; if (n ......
Educational Codeforces Round Rated 150

CF1843E Tracking Segments 做题笔记

题目链接 这题其实还行。 如果能想到二分答案就会比较简单,我们来看如何写 check 函数。 把当前所有的单点修改存起来,然后依次遍历每个区间,观察这个区间内被单点修改的点的个数是否严格大于该区间长度的一半即可。 我们需要一个支持单点修改区间查询的工具,首先想到树状数组,但前缀和就够用了。 时间复杂 ......
Tracking Segments 笔记 1843E 1843

CF321C Ciel the Commander 题解 点分治

题目链接:[http://codeforces.com/problemset/problem/321/C](http://codeforces.com/problemset/problem/321/C) 解题思路: 点分治模板题。 每次找到重心给他分配一个字符,分治往下走的时候分配的字符ASCII码 ......
题解 Commander 321C Ciel 321

CF765F. Souvenirs

[压位 trie](https://www.cnblogs.com/xx019/p/17503466.html) 好厉害。 显然加一个数很好维护,删一个数有点不好做,考虑回滚莫队。用平衡树维护数的集合,每次插入之前用前驱/后继与插入数的差更新一下答案,可以 $O(n\sqrt{n}\log n)$, ......
Souvenirs 765 CF

CF1553F. Pairwise Modulo

终于过了,感觉还是有点东西的。 首先我们有一个很好想的 $O(n(\ln A+\sqrt{A})\log n)$ 的做法。首先这个式子能写成 $p_i=\sum\limits_{j=1}^i\sum\limits_{k=1}^i\left(a_j-a_k\left\lfloor\dfrac{a_j} ......
Pairwise Modulo 1553 CF

Codeforces Round 875 (Div. 2) C. Copil Copac Draws Trees

bfs解法 如果是暴力求解的话就每次都扫描一次所有边直到所有点都和树连接 优化:每次扫描我们可以发现会重复扫描那些已经存在树中的边了,因此我们可以只扫描还没有存在树中的边且是没扫过的边 对于每次更新,比如由点a已经在树中,更新点b,我们只需判断点a被更新到树中点的编号和a-b边的编号的大小,如果比它 ......
Codeforces Round Copil Copac Draws

CF1400E Clear the Multiset

CF1400E Clear the Multiset 一道经典简单的分治 由贪心可知,对于一段区间[L,R],一共有两种处理方式 1.一个一个减,次数为l-r+1 2.先区间减,直到最小的减没了,在考虑最小值隔开的两个区间。如果有多个最小值,其实也不影响,再往下分的时候一定会分开。区间答案就是 $m ......
Multiset 1400E Clear 1400 the

CF1815E Bosco and Particle

有个粒子初始在 $0$ 位置,$1\cdots n$ 位置分别为有一个对撞器,如果在 $0$ 位置则向右,如果在 $n + 1$ 位置则向左。每个对撞器有一个 $01$ 串,初始所有对撞器的指针都在开头,当粒子走到 $i$ 位置时,对撞器所指的值为 $0$ 则不改变方向,否则反向,指针指向下一个位置 ......
Particle 1815E Bosco 1815 and

SMU Spring 2023 Contest Round 6

E. Expenditure Reduction 从左右往右找到包含B字符的最近位置,然后从这个位置有从右到左找回去找到包含完所有B字符的位置,这个区间就是答案 #include <bits/stdc++.h> #define inf 0x3f3f3f3f #define endl '\n' #de ......
Contest Spring Round 2023 SMU

Codeforces Round #879 (Div. 2) A-E

[比赛链接](https://codeforces.com/contest/1834) # A ## 代码 ```c++ #include using namespace std; using ll = long long; bool solve() { int n; cin >> n; int c ......
Codeforces Round 879 A-E Div

CF771C Bear and Tree Jumps

# CF771C Bear and Tree Jumps [link](https://codeforces.com/problemset/problem/771/C) 赛时脑子抽了没想出来,其实思路已经沾边了,但是……唉,还是太菜了 qwq。 ## 题意: 给你一颗有 $n$ 个点的树,和每次能走 ......
Jumps 771C Bear Tree 771

CF1450E Capitalism - 差分约束系统 - 最短路 -

题目链接:https://codeforces.com/contest/1450/problem/E 题解: 题目中的等式关系为 $a_u-a_v=1$ 和 $|a_u-a_v|=1$ 首先,等式关系不好处理,考虑化成不等式 第一种:$a_u-a_v\leq 1$ 且 $a_v-a_u\leq -1 ......
Capitalism 系统 1450E 1450 CF

CF1725C Circular Mirror

虽然是一道绿题,但是感觉推式子时的一些细节还是值得学习的,并且还是有点 $2$ $hard$ $4$ $me$...... >一个圆上有 $N$ 个可染色的点,编号 $1\to N$。$N$ 号点和 $1$ 号点相邻。 你可以用 $M$ 种颜色将这些点染色。要求不能出现有三个同色点围成直角三角形。 ......
Circular Mirror 1725C 1725 CF

CF1418G Three Occurrences 做题笔记

题目链接 题意是输出所有区间满足其内部每个数要么出现 $3$ 次要么不出现的个数。 因为是区间,数量很多,发现贡献是可以抵消的,直接无脑预处理前缀的桶。 然后枚举左端点,统计答案,怎么处理呢? 疯狂地向右扩展,直到区间内有数字出现了 $3$ 次以上(这样是对的,待会儿证明,另外扩展到前一个就够了,不 ......
Occurrences 笔记 1418G Three 1418

cf1843

#### A. Sasha and Array Coloring [题目链接](https://codeforces.com/contest/1843/problem/A) 题目大意:将数组分为若干个集合每个集合非空,求每个集合内最大和最小元素之差的和的最大值 数组排序后将最大和最小元素划为一个集合 ......
1843 cf

Codeforces Round 781 (Div. 2) E. MinimizOR (可持久化字典树)

[传送门](https://codeforces.com/contest/1665/problem/E) 题目大意: ** T组测试数据每组测试数据先输入一个n表示有一个长度为n的一维数组,然后输入n个数字表示这个一维数组。紧接着输入一个k表示有k个询问,对于每个询问会输入一个l和一个r表示询问数组 ......
字典 Codeforces MinimizOR Round 781

CF1827E Bus Routes

CF1827E Bus Routes 很有思维含量的一道题。 任意钦定一个根 $rt$,对于每个节点,如果它不能到达,那么他的子树内所有点一定也不能到达,因此,我们只用考虑每一个叶子节点的情况。对每个叶子节点 $u$,设 $low_{u}$ 表示他能通过一条路线到达的最浅的祖先。对于任意两叶子节点, ......
Routes 1827E 1827 Bus CF

Codeforces Round 881 (Div

## E. Tracking Segments >给定初始长度为`n`,且全为`0`的序列`a`,然后给出`m`个线段,如果一个线段中`1`的个数严格大于`0`的个数,那么该线段称为一个漂亮线段,现在给出`q`次操作,每次操作使得序列`a`中位置`x`上的`0`变为`1`,请你求出第一次使得所有线段 ......
Codeforces Round 881 Div

CF1773J-King‘s Puzzle【构造】

# 正题 题目链接:[https://codeforces.com/contest/1773/problem/K](https://codeforces.com/contest/1773/problem/K) ## 题目大意 要求构造一张 $n$ 个点的无向图满足。 - 不存在重边和自环,且图连通 ......
J-King Puzzle 1773 King CF

Codeforces Round 877 (Div. 2)A-D

Codeforces Round 877 (Div. 2)A-D A: 有负数就输出,没有就输出最大值即可。 void solve(){ int n; cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; } sort(a+1,a+1+n); if(a[1]<0){ c ......
Codeforces Round 877 A-D Div