题解codeforces round 891
P9620 歌姬 题解
感觉题解做法都好神秘。 来一个容易理解,通俗易懂的树剖解法。 思路 容易发现原问题等价于维护一个虚树。 每一次询问虚树的根的所有儿子的最大值。 要求链修。 容易发现仅仅动态维护根是好做的。 我们用一个 \(\text{set}\)。 每次维护 \(\text{dfs}\) 的最小值和最大值。 对于这 ......
【题解】Atcoder snuke21_e Tournament
传送门:https://atcoder.jp/contests/snuke21/tasks/snuke21_e?lang=en 题意: 求所有 $n$ $(n \leq 100000)$ 个点的竞赛图中强连通分量个数之和。 思路: 竞赛图的好性质:对竞赛图 $SCC$ 缩点之后,所有点有一个拓扑序, ......
Codeforces Round 904 (Div. 2)
\(A. Simple Design\) https://codeforces.com/contest/1884/submission/233628914 \(B. Haunted House\) https://codeforces.com/contest/1884/submission/2336 ......
Codeforces Round 910 (Div. 2) - D
目录D. Absolute Beauty Codeforces Round 910 (Div. 2) D. Absolute Beauty 观察可知,只要当交换的 \(i\) 和 \(j\) 满足 $ max(a_i, b_i) < min(a_j, b_j)$ 或者 $ min(a_i, b_i) ......
【线段树优化 dp】AT_dp_w Intervals 题解
AT_dp_w 先不看数据范围,考虑 dp。 令 \(f_i\) 表示前 \(i\) 个字符且强制第 \(i\) 个字符为 \(1\) 的最大分数。 则 \(f_i = \max(f_{j - 1} +\sum\limits_{r_k\ge i\ge l_k\ge j}a_k)\)。 这个是一份 \ ......
【区间 dp】UVA1331 最大面积最小的三角剖分 Minimax Triangulation 题解
UVA1331 区间 dp。 有一个很经典的问题:给定一个凸多边形,求它的最优三角剖分,对每个三角形规定一个权函数 \(f(i,j,k)\),求所有剖分方案中最大的权值。 发现这个东西不好直接入手。但是这个东西与矩阵最优链乘是相似的。考虑区间 dp。因为随意的转移是难以维护的,维护区间信息就等于强制 ......
CF1898 D Absolute Beauty 题解
Link CF1898 D Absolute Beauty Question 给出两个长度都为 \(n\) 的数组 \(a,b\) ,我们可以任意选择两个数 \(i,j\) 交换 \(b_i\) 和 \(b_j\) 一次,或者不换 求 \(\sum\limits_{i=1}^n |a_i-b_i|\ ......
[题解]CF1899D Yarik and Musical Notes
思路 暴力化简公式题。 假定 \(b_{i}^{b_j} = b_{j}^{b_{i}}\) 成立,那么有: \[2^{a_i \times 2^{a_j}} = 2^{a_j \times 2^{a_i}}\\ a_i \times 2^{a_j} = a_j \times 2^{a_i}\\ \ ......
【题解】JLOI2016 - 成绩比较
【题解】JLOI2016 - 成绩比较 https://loj.ac/p/2026 是我会的题,所以感觉难度不如 noip T3T4。 设 \(f_{i,j}\) 表示考虑到前 \(i\) 门课,有 \(j\) 人被 B 碾压。 转移,设这轮中有 \(k\) 个原本被碾压的人不再被碾压,则相当于从 ......
CodeForces 合集第三弹
这个合集主要是近期的 CodeForces 比赛题。 1898. Codeforces Round 910 (Div. 2) https://codeforces.com/contest/1898 A. Milica and String 很容易发现答案不超过 \(1\),然后分类讨论当前 B 的个 ......
CF1898 C Colorful Grid 题解
Link CF1898 C Colorful Grid Question 给出一个 \(N\times M\) 的网格图 给每一条边染色(R/B),需要存在一条长度为 \(K\) 的路径从 \((1,1)\) 到 \((N,M)\),路径允许重复通过一个节点。 Solution 非常有意思的一道题 ......
CF1898 B Milena and Admirer 题解
Link CF1898 B Milena and Admirer Question 给出一个长度为 \(n\) 的序列 \(a\) ,我们可以做一种操作使得 \(a\) 非降,操作是: 对于一个 \(a_i\) 选择一个整数 \(0 \le x \le a_i\) ,用两个数 \(x,(a_i-x) ......
CF1899 G Unusual Entertainment 题解
Link CF1899 G Unusual Entertainment Question 给出一个排列 \(p_i\) 和一棵树,给出 \(Q\) 组询问,每组询问 \([L,R,x]\) 表示求 \(p_L \sim p_R\) 上是否存在 \(p_i\) 在 \(x\) 的字数上。 Soluti ......
Codeforces Round 785 (Div. 2)
A - Subtle Substring Subtraction /* * __ ~~~~~~~~~~~ ___ * . . ~~// ...... __--~ ~~ * -. \_|// |||\\ ~~~~~~::::... /~ * ___ _ _-~o~ \/ ||| \\ _/~~- * ......
Codeforces Round 908 (Div. 2)
Preface 补一下之前期中考落下的CF yysy因为这学期又开始断电了,所以除了周五周六晚上的CF可能都不一定会去打,都会以后面补题为主 A. Secret Sport 由于题目保证给出的状态合法,因此直接输出最后一个字符即可 #include<cstdio> #include<iostream ......
noip2023 题解(民间数据)
P9868 [NOIP2023] 词典(民间) 直接把每个串 \(w_i\) 都从大到小/从小到大排一下,记作 \(a_i,b_i\)。如果 \(b_i\) 小于除了 \(i\) 之外的所有 \(a_i\),说明可以,否则不行。求一个前后缀最大值即可。复杂度 \(\mathcal{O}(26n+nm ......
Codeforces Round 910 (Div. 2)
Codeforces Round 910 (Div. 2) 基本情况 做A题的速度比之前快多了,大概20分钟搞定。 B题想了一个贪心错解,想用链表实现,但是不熟练,实现太慢,而且还被hack了。 但是自己hack掉了,造数据上进步。 B. Milena and Admirer 贪心思路 发现一个大于 ......
Codeforces Round 910 (Div. 2)
\(A. Milica and String\) https://codeforces.com/contest/1898/submission/233431132 \(B. Milena and Admirer\) https://codeforces.com/contest/1898/submis ......
Codeforces Round 909 (Div. 3)
Codeforces Round 909 (Div. 3) 基本情况 第一次在 CF 上 AC 了超过一道题。(毕竟是Div3) B 题卡住了很久。 D 没有深入思考。 [B. 250 Thousand Tons of TNT](Problem - B - Codeforces) 一开始死活过不了的 ......
P9713 「QFOI R1」抱抱 题解
P9713 「QFOI R1」抱抱 题解 Sol 前置知识:长方体体积公式:\(V = abh\)。 我们知道,切割掉 \(x \le k\) 的部分就是把 \(a\) 减去 \(k\),切割掉 \(y \le k\) 的部分就是把 \(b\) 减去 \(k\),切割掉 \(z \le k\) 的部 ......
NEFU OJ Problem 1496 绿巨人吃绿苹果 题解
Problem:H Time Limit:1000ms Memory Limit:65535K Description 从前有一个绿巨人,他有个习惯是每餐只吃n个绿苹果。他有一棵神树,无限大,每一层都有且仅有k个枝杈,这k个枝杈上正好分别有1,2,3...,k个苹果。为了锻炼身体,他在同一层仅仅能选 ......
[ABC328C] Consecutive 题解
Hello World 链接 这道题是一个很明显的前缀和,我们把 $sum_i$ 表示为前 $i$ 个字符有多少个有重复,查询的时候就用 $sum_{r-1}-sum_{l-1}$ 就行了。 代码 #include<bits/stdc++.h> using namespace std; string ......
[ABC326C] Peak 题解
题目链接 题目思路 这个问题要求找到一个半开区间,使得在这个区间内包含尽可能多的礼物。首先,我们需要将输入的礼物坐标按照从小到大的顺序进行排序。然后,我们可以使用双指针的方法来寻找最佳的区间。 代码 以下是代码解释: #include<bits/stdc++.h> using namespace s ......
CF222A Shooshuns and Sequence 题解
分析 这题是一个很水的题,就是对一个序列有 $2$ 种操作方法,一种是对第 $K$ 个数以前的数的第一个进行删除,另一个则是在整个序列后添加这第 $K$ 个数,使得整个序列为同一个数字,显然,后者是无效操作,则只需要判断第 $K$ 个数以后有无与第 $K$ 个不同的数,有则无解,反之有解。若有解,然 ......
CF601B Lipshitz Sequence 题解
给你一个序列 \(v_{1 \dots n}\),定义 \(f(v)\) 为 \(v\) 中斜率最大值(\(\lvert v \rvert = 1\) 则 \(f(v)=0\)),有 \(q\) 组询问,每次给定 \(1 \le l \lt r \le n\),求 \(a_{l \dots r}\) ......
NEFU OJ Problem 1489 青蛙赶路 题解【动态规划DP】
Problem:G Time Limit:2000ms Memory Limit:65535K Description 有一只青蛙,每秒选择走1米或跳m米,青蛙体力不足,所以不能连续两秒都在跳。 青蛙将移动到[l,r]之间,它想知道有多少种不同的方式来实现其目标。 两种方式是不同的,当且仅当它们移动 ......
ICPC2023深圳部分题解(A,D,E,F,G,K,L)
目录正题A 一道好题题目大意解题思路D 机器人兄弟题目大意解题思路E 二合一题目大意解题思路F 见面礼题目大意解题思路G 相似基因序列问题题目大意解题思路K 四国军棋题目大意解题思路L Mary 有颗有根树题目大意解题思路 正题 好像还没上gym所以放不了题目链接,深圳这场的题目我觉得都很好所以写个 ......
NEFU OJ Problem1485 贪吃蛇大作战 题解
Problem:F Time Limit:1000ms Memory Limit:65535K 题目 Description 贪吃蛇大家一定都玩过吧,现在宋哥也要玩这个游戏,最初的时候贪吃蛇从屏幕的左下角出发,但是有一个非常不幸的事情,就是宋哥的游戏机的左键和下键坏掉了,这意味着什么?没错!他只能操 ......
洛谷 P9869 [NOIP 2023] 三值逻辑 题解
https://www.luogu.com.cn/problem/P9869?contestId=145259 看到要给变量赋初始值,还是 T, F, U 之类的,容易想到 2-SAT。 设 \(1 \sim n + m\) 的点表示 \(x_1, x_2, \dots, x_{n + m}\) 为 ......