题解codeforces round 879

【题解】CF1817 合集

CF1817A Almost Increasing Subsequence 考虑几乎上升的序列的长度,就是我们的区间长度减去 \(a_{i-2} \geq a_{i-1} \geq a_i\) 的对数,然后维护即可,当然个人感觉自己的代码有点长,可以考虑看洛谷题解代码 code: #include< ......
题解 1817 CF

9.18CF1817题解

9.18CF1817题解 A. Almost Increasing Subsequence 题意 给定长度为 \(n\) 一个序列 \(a\) 以及 \(q\) 次询问,每次询问给出 \(l\) 和 \(r\),找出序列 \(a\) 在 \([l,r]\) 内最长的几乎递增子序列。 对于几乎递增的定 ......
题解 9.18 1817 18 CF

AtCoder Beginner Contest 320 F Fuel Round Trip

ABC 320 F 题意 汽车从0开始出发,最终到达\(X_n\)再返程回到0,一开始有汽油\(H\)升,每公里耗油一升,在点\(X_i\)有加油站,每个加油站只可以加油一次,并且一次就加\(W_i\)升,花费\(P_i\),且最大油量有限制\(\leq H\)。问最小花费 思路 它的数据范围\(n ......
Beginner AtCoder Contest Round Fuel

Educational Codeforces Round 143

A. Two Towers #include <bits/stdc++.h> using namespace std; #define int long long #define mp make_pair using pii = pair<int, int>; using vi = vector<i ......
Educational Codeforces Round 143

CodeTON Round 6 (Div. 1 + Div. 2)( A-D )

A. MEXanized Array 下次还得得签快一点,嘉心糖4分就过了 思路 一个简单的讨论 n k x 之间关系就行 完整代码 #include<bits/stdc++.h> using namespace std ; #define ll long long inline int read( ......
Div CodeTON Round A-D

题解 AGC058B 【Adjacent Chmax】

posted on 2022-08-15 00:08:56 | under 题解 | source problem 一个长为 \(n\) 的排列 \(P\),每次可以选择一个 \(i\),令 \(v=\max(P_i,P_{i+1})\),使 \(P_i=P_{i+1}=v\),求若干次操作后有多少 ......
题解 Adjacent Chmax 058B AGC

AT_arc165_d 题解

AT_arc165_d [ARC165D] Substring Comparison 题解 Links 洛谷 AtCoder Description 给定正整数 \(n,m\) 和 \(m\) 个形如 \((A_{i},B_{i},C_{i},D_{i})\) 的限制条件。 判断是否存在一个长度为 ......
题解 AT_arc 165 arc AT

AT_arc165_b 题解

AT_arc165_b [ARC165B] Sliding Window Sort 2 题解 Links 洛谷 AtCoder Description 给定正整数 \(n,k\) 和一个长度为 \(n\) 的整数 \(P\),你需要选择一个长度为 \(k\) 的区间 \([l,l + k - 1]\ ......
题解 AT_arc 165 arc AT

CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!)(A-D)

CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!) A.让你找mex为k的n个数,这n个数从0-x,问n个数的和最大值是多少 先判断不行的。然后行的肯定有0-k-1,剩下还有就选x就行。 查看代码 #include<iostream> using na ......
Div CodeTON Prizes Round Rated

题解 STEAD - Steady Cow Assignment

我一眼费用流,等等不太对,感觉还是最大流好点。 题目描述 给你一堆奶牛和牛棚,每个奶牛可以匹配多个牛棚,而每个奶牛对每个牛棚之间的满意度是不一样的,并且每个牛棚的容量也是不一样的,问你最终可以有多少个牛匹配的牛棚满意度之和最小。 具体思路 首先,源点与每个奶牛之间连一条流量为 \(1\) 的边。 要 ......
题解 Assignment Steady STEAD Cow

题解 [ARC165A] Sum equals LCM

前天的晚上打这道题,和同学一起想出了思路,开心。 题意描述 给你一个数 \(N\),问你存不存在一个数列 \(A_1,A_2,\ldots,A_n(2 \le n)\) ,使得 \(\sum_{i=1}^n A_i=N\) 并且 \(\operatorname{lcm}(A_1,A_2,\ldots ......
题解 equals 165A ARC 165

P3188 [HNOI2007] 梦幻岛宝珠-题解

20230918 P3188 [HNOI2007] 梦幻岛宝珠 Statement 01背包, \(n \le 100\),但是容量 \(m \le 2^{30}\)。 物体的体积可以写成 \(a \times 2^b(a \le 10,b \le 30)\) Solution 发现 \(W\) 太 ......
宝珠 题解 梦幻 P3188 3188

牛客周赛 Round 12 D 小美的区间异或和

Link 首先这个题目的限制卡的很死,最好是O(n)解决,其次当看到异或的时候,就可以考虑按照二进制位进行计算。 对于这个题,我们定义\(dp_i\)表示以\(a_i\)为最右端的子区间的答案的和 那么首先可以想到,贡献给这个答案的有两个部分,包括\(a_i\)的和不包括的,其中不包括\(a_i\) ......
区间 Round 12

Azamon Web Services 题解

Azamon Web Services 看到目前题解都是 \(O(n^2)\) 的复杂度,来一发 \(O(nlogn)\) 的贪心题解。 思路很简单,先求经过至多一次的交换后,最小的字符串 \(S\)。再和 \(T\) 比较,如果小于就输出,否则无解。 问题转化成了两个子问题: 求经过至多一次的交换 ......
题解 Services Azamon Web

Educational Codeforces Round 107

依然是四题,但是感觉太久没打,好像变得迟钝了。 B题大概就是令 \[c={10}^k, a=c*3^k, b=c*2^k \]C的话直接暴力维护每种颜色的第一个位置就行,反正只有50个 D的话刚开始没什么想法,构造题什么的真的不会啊 打表之后发现,对于k,在cost为0的情况下,最多能造出长度为\( ......
Educational Codeforces Round 107

CF762C Two strings 题解

洛谷传送门 CF 传送门 题意 给你两个字符串 \(a\) 和 \(b\),你可以在 \(b\) 中删去尽量短的子段,使得 \(b\) 是 \(a\) 的子序列。求出最后的 \(b\)。 思路 真是奇了怪了,这种题洛谷题解里竟然没有双指针的做法? 首先考虑判断一个字符串 \(b\) 是否是另一个字符 ......
题解 strings 762C 762 Two

Alice and Hairdresser题解

Alice and Hairdresser 第一眼线段树,第二眼好像可以直接用数组模拟。 当一根头发长于 $l$,它再长多长其实都一样,所以不用开 long long。 如果一根新的头发长到比 $l$ 长,那可以分成以下几种情况: 如果它左侧和右侧只有一个元素大于 $l$ ,那答案不变。 如果左侧和 ......
题解 Hairdresser Alice and

罪人挽歌 题解

罪人挽歌 题解 简化题意: 给定 \(n\) 个二元组,第 \(i\) 个二元组的值为 \((a, b)\),保证任意两个二元组都不相同。 求是否存在一个二元组的排列,使得这些二元组满足对于任意 \(1 \leq i < n\),有 \(A_i = A_{i+1}\) 或 \(B_i = B_{i+ ......
题解 挽歌 罪人

「题解」BZOJ 3305 Catalan 数

\(f_{i,j}=f_{i-1,j-1}+f_{i-1,j+1}(j+1)\) 看成生成函数就有 \(F_n=xF_{i-1}+F_{i-1}'\),思路是凑微分,想凑出一个 \(G_i\) 是和 \(F_i\) 有关的,然后 \(G_i\) 有比较简单的形式。 这里就 \(G_n=F_n\tim ......
题解 Catalan BZOJ 3305

Codeforces Round 897 (Div. 2) A-E

A. green_gold_dog, array and permutation 题意:给出一个长为\(n\)的数组\(a\),找到一个长为\(n\)的排列\(b\),使得\(a\)与\(b\)对应位置上的元素的差尽可能大 Solution 将数组\(a\)排序,然后令排列\(n,n-1,...,2 ......
Codeforces Round 897 A-E Div

[题解]Pa?sWorD(2023ICPC网络预选赛第一场I题)

I Pa?sWorD 下次不要认为2e8可以莽过去了 思路 计数DP + 状压(其实也可以不压) + 前缀和优化(倒着写是差分) dp[i][j][k]表示第i位填j,状态为k的方案数 k这一维用于状态压缩,表示 数字、大写、小写 是否出现 前缀和优化:在处理?的时候,暴力会有62X62X8的单次复 ......
题解 预选赛 sWorD 网络 2023

题解 P6821 [PA2012] Tanie linie

本来想写 wqs 二分来着,然后推不出 dp 方程,摆烂了。 题目描述 给定含 \(n\) 个数的序列,求至多 \(k\) 个不相交子段的和的最大值。 具体思路 由于选 \(k\) 堆连续的数,因此一堆连续的符号相同的数,只有可能是同时被选或者同时不被选。 因此我们先对原序列预处理一遍,将相同符号的 ......
题解 P6821 Tanie linie 6821

SMU Autumn 2023 Round 3(Div.1)

SMU Autumn 2023 Round 3(Div.1) A. Find The Array 要满足“b数组内任意一个元素满足可以被数组两边的元素整除”这个条件,我们很容易想到1是万能的,所以我们只需要把a数组某些元素改成1就可以了 条件二要满足a,b方差够小,那其实我们只用把a数组内奇数位,偶 ......
Autumn Round 2023 SMU Div

SMU Autumn 2023 Round 4(Div.1+2)

SMU Autumn 2023 Round 4(Div.1+2) A. Access Denied 通过分析样例可以得知如果所猜字符串与答案字符串长度不同,则只要\(5ms\),且答案最多\(20\)个字符,因此我们可以先猜20次去核对总字符串长度,如果核对过程中直接猜中了,那就不用继续猜了,又继续 ......
Autumn Round 2023 SMU Div

关于round4的反思

那场只出了A题和K题, K题就是一个模拟题,结构体然后模拟一下情况就出来了,但是情况还蛮多的,当时wa了两发,第一发是因为漏了一种情况,第二发是循环里面出了点小问题,当时在第二发那里卡了很久,因为第一发是因为漏了情况,所以我们理所当然的以为还漏了情况,所以一直在那里想还有什么情况,试了很久,最后还是 ......
round4 round

Death DBMS题解(AC自动机)

题目传送门 CF1437G 好题 观察这道题,发现有关字串的题目,一般来说,这种题都要构建\(AC\)自动机,所以考虑构建。 构建之后,原来的所有 \(fail\) 是一个树形结构。 解法 \(1\): 考虑从询问入手,那么对于每一个询问,等价于就是查询每一个 \(Q_i\) 包含的后缀的最大值,再 ......
自动机 题解 Death DBMS

题解 LOJ2549【[JSOI2018] 战争】

problem 给你两个平面凸多边形 \(A,B\),\(Q\) 次询问,每次询问是一个向量 \(\vec v\),回答 \(A\) 与 \(B + \vec v\) 是否有交。\(n,Q \leq 10^5\)。 solution 观察闵可夫斯基和(Minkowsky sum)的定义,若将这个运算 ......
题解 战争 2549 2018 JSOI

CodeForces 1863G Swaps

洛谷传送门 CF 传送门 看到 \(a_{a_i}\) 和 \(a_i \in [1, n]\),果断连边 \(i \to a_i\),得到内向基环森林。 那么每次相当于把 \(a_i\) 变成自环,连边 \(i \to a_{a_i}\)。 但是每次操作都改变图的形态很不好办,考虑打标记。 每次 ......
CodeForces 1863G Swaps 1863

CF70D Professor's task 题解 & 动态凸包板子

CF70D Professor's task 题解 前言 此篇题解用的是 \(Andrew\),不想看这种做法的可以绕道。 题意 动态凸包板子题。 维护动态凸包。两种操作,加一个点或查询一个点是否在凸包内。 题解 首先你得会静态二维凸包。 维护二维凸包的方法挺多的,比如什么 \(Andrew\) 算 ......
凸包 题解 板子 Professor 动态

[ABC320E] Somen Nagashi题解

2023-09-16 题目 题目传送门 翻译 翻译 难度&重要性(1~10):4 题目来源 AtCoder 题目算法 优先队列 解题思路 水题一道。 需要两个优先队列: 因为每一次是队首的人拿到面条,即队列中编号最小的拿面条,就用一个优先队列用来维护当前队列中的编号最小的人。 由于每一次拿了面条后再 ......
题解 Nagashi Somen 320E ABC