problems inverse 1910i cf

Codeforces[CF1036B]Diagonal Walking v.2题解

# 题目大意 很明显,这道题就是求 k 步之内到达点 $(a,b)$ ,然后尽量走对角线,求能走对角线的最大值。 # 做题思路 首先明白一个事实,即一个对角线可以通过增加一步而抵达点不变,如图: ![image](https://img2023.cnblogs.com/blog/3175066/20 ......
题解 Codeforces Diagonal Walking 1036B

【每日一题】Problem 476B. Dreamoon and WiFi

[原题](https://codeforces.com/problemset/problem/476/B) #### 解决思路 ##### 数学 不管 **recv** 字符串如何,最终的结果一定满足以下条件: 1. '+' 数量与 **send** 字符串相同 2. '-' 数量与 **send* ......
Dreamoon Problem WiFi 476 and

CF1843E Tracking Segments

# CF1843E Tracking Segments VP 的时候本来摆烂了,结果快结束的时候想到了做法(没时间敲了 qwq)。这里提供一种和已有题解不同的思路。 我们发现,对于每个修改,我们可以将该点的值修改为这次修改的时间,未修改的点则赋为 $n+1$。这样转化后,区间合法的条件就是区间内小于 ......
Tracking Segments 1843E 1843 CF

CF Gym 102994 Travel Dream

## 题意 求一张带权无向图中最大的 $k$ 元简单环,无解输出 `impossible`。 $1 \le n, m \le 300, k \le 10$。**注意 $k$ 的范围** ## 题解 $k$ 很小,存在简单办法对小环小链进行预处理,考虑折半。首先考虑怎么求长度小于等于 4 的链。长度为 ......
102994 Travel Dream Gym CF

CF1815

# CF1815 > `Div. 1` 确实难,`Virtual Contest` 上只完成了两道题,想出来了三道题。 ## A. Ian and Array Sorting 秒切题……考虑将前 $n - 1$ 个数变成一样的一个数 $x$。显然可以完成。 然而考虑此时最后一个数。如果 $\ge x ......
1815 CF

「解题报告」CF500G New Year Running

来个垃圾做法。 首先这个树没啥用,我们只需要找到两条路径的交与方向即可。分类讨论即可得到,略掉了。 把距离找出来之后,我们可以将运动路径写成序列,那么我们现在相当于有两个分成五段的序列,其中有两端为 $1 \to d$ 与 $d \to 1$。我们枚举几种情况,分别是 $1 \to d, 1 \to ......
Running 报告 500G Year 500

【cs 50 2022】lab2 && problem set2

lab2 #include <ctype.h> #include <cs50.h> #include <stdio.h> #include <string.h> // Points assigned to each letter of the alphabet int POINTS[] = {1, ......
amp problem 2022 lab2 set2

CF1834 题解

# CF1834 题解 ### A 考虑答案与元素位置无关,只与$1$和$-1$的个数有关。要求$1$必须多于或等于$-1$,并且$-1$个数为偶数。分讨: 序列中$num(1) \geq num(-1)$,只需要看$num(-1)$正负性,奇数1步,偶数0步 序列中$num(1) using na ......
题解 1834 CF

CF1834

# CF1834 > Virtual Contest 做了 5 道题,非常不错。 ## A.Unit Array 秒切题,判断个数,然后判断一下奇偶即可。 提交: ## B.Maximum Strength ### 题目描述 每一种材料的力量由一个十进制整数表示。 对于一个武器,由**两种**材料构 ......
1834 CF

CF1836

# A.Destroyer 开个桶记录个数,看满不满足单调不上升即可。 # B.Astrophysicists > 辛辛苦苦写了这么久的文章就没了????烦死了。 > 自己做 Virtual Contest 的时候这道题打表打了半天(~~20min~~)才搞定…… ## 题目大意 有 $n$ 个人, ......
1836 CF

【CF1842F】Tenzing and Tree

# 题目 题目链接:https://codeforces.com/contest/1842/problem/F 给定一棵 $n$ 个点的树,你可以选择其中 $k$ 个点染黑,定义一条边的价值为割去这条边之后,剩下两颗树的黑点数量差;一棵树的价值为所有边的价值之和。 对于 $k\in [0,n]$,求 ......
Tenzing 1842F 1842 Tree and

CF 1300 - ?

`*`:不错的题。 ### Codeforces Round 618 #### CF1299C Water Balance \*2100 注意到答案序列一定是单调递增的,证明:如果不是单调递增的则一定可以通过一次操作将字典序变小。 故,使用单调栈维护当前最靠右区间的权值,如果两个相邻区间合并后字典序 ......
1300 CF

CF1834 Div.2 做题记录

## A [题面](https://codeforces.com/contest/1834/problem/A) 分类讨论即可 点击查看代码 ``` #include #define ull unsigned long long #define ll long long #define pii pa ......
1834 Div CF

CF1580D Subsequence 题解

本文网址:https://www.cnblogs.com/zsc985246/p/17509039.html ,转载请注明出处。 ## 传送门 [CF1580D Subsequence](https://codeforces.com/contest/1580/problem/D) ## 题目大意 有 ......
题解 Subsequence 1580D 1580 CF

【每日一题】Problem 489B. BerSU Ball

[原题](https://codeforces.com/problemset/problem/489/B) #### 解决思路 排序+双指针 ```C++ #include int main() { int n; std::cin >> n; std::vector a(n + 1, 0); for ......
Problem BerSU Ball 489

CF1843E 二分+前缀和

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

【每日一题】Problem 416B. Art Union

[原题](https://codeforces.com/contest/416/problem/B) #### 解决思路 ![image](https://img2023.cnblogs.com/blog/3076745/202306/3076745-20230627001424047-208527 ......
Problem Union 416 Art

【每日一题】Problem 443B. Kuriyama Mirai's Stones

[原题](https://codeforces.com/contest/433/problem/B) #### 解决思路 1. 两个数组,一个未排序,一个排序; 2. 使用前缀和的方式减少时间复杂度 ```C++ #include int main() { std::ios::sync_with_s ......
Kuriyama Problem Stones Mirai 443

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

【cs50 2022】lab1 && problem set1

|lab1| #include <cs50.h> #include <stdio.h> int main(void) { // TODO: Prompt for start size int start_size; do{ start_size = get_int("Start size: "); ......
amp problem 2022 lab1 set1

CF603E Pastoral Oddities

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

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

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

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

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

CF1400E Clear the Multiset

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