题解wag-quaternary quaternary balance

CF1894 A Secret Sport 题解

Link CF1894 A Secret Sport Question 其实这个翻译有一点点小问题,正确的翻译应该是这样 \(A,B\) 两人玩游戏,游戏规则如下: 整场游戏有多轮,每轮游戏先胜 ,\(X\) 局的人获胜,每场游戏先胜 ,\(Y\) 轮的人获胜。 Solution 引用 haohao ......
题解 Secret Sport 1894 CF

T401305 平面划分(easy) 题解

Link T401305 平面划分(easy) Solution 平面上 \(n\) 条直线所划分处的区域最大个数 \(L_n\) 是多少 我们考虑假设已经有\(n-1\) 条直线,我们需要画一条直线,这条直线最多和 \(n-1\) 条直线相交产生 \(n\) 个新的区域 所以我们得到了 \[\be ......
题解 平面 T401305 401305 easy

[ABC328D] Take ABC 题解

链接 如果只是扫一遍肯定是不行的,所以我们使用一个栈,遇到 C 就判断栈顶的两个元素是不是分别为 B 和 A。这样就能做出来这道题了。 代码 #include<bits/stdc++.h> using namespace std; string s; char stk[200010]; int ma ......
题解 ABC 328D Take 328

【树链剖分】P3401 洛谷树 题解

P3401 考虑先将路径权值进行转化,因为很难对路径直接进行统计。考虑如何表示出这条路径的权值。记 \(s_i = \oplus_{j \in \text{path}(1, i)} w_j\),其中 \(\text{path}(i, j)\) 表示 \(i\) 到 \(j\) 的路径上的边集。则 \ ......
题解 P3401 3401

P9620 歌姬 题解

感觉题解做法都好神秘。 来一个容易理解,通俗易懂的树剖解法。 思路 容易发现原问题等价于维护一个虚树。 每一次询问虚树的根的所有儿子的最大值。 要求链修。 容易发现仅仅动态维护根是好做的。 我们用一个 \(\text{set}\)。 每次维护 \(\text{dfs}\) 的最小值和最大值。 对于这 ......
歌姬 题解 P9620 9620

【题解】Atcoder snuke21_e Tournament

传送门:https://atcoder.jp/contests/snuke21/tasks/snuke21_e?lang=en 题意: 求所有 $n$ $(n \leq 100000)$ 个点的竞赛图中强连通分量个数之和。 思路: 竞赛图的好性质:对竞赛图 $SCC$ 缩点之后,所有点有一个拓扑序, ......
题解 Tournament Atcoder snuke 21

【线段树优化 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)\)。 这个是一份 \ ......
线段 题解 Intervals AT_dp_w AT

【区间 dp】UVA1331 最大面积最小的三角剖分 Minimax Triangulation 题解

UVA1331 区间 dp。 有一个很经典的问题:给定一个凸多边形,求它的最优三角剖分,对每个三角形规定一个权函数 \(f(i,j,k)\),求所有剖分方案中最大的权值。 发现这个东西不好直接入手。但是这个东西与矩阵最优链乘是相似的。考虑区间 dp。因为随意的转移是难以维护的,维护区间信息就等于强制 ......
题解 区间 Triangulation 面积 Minimax

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|\ ......
题解 Absolute Beauty 1898 CF

[题解]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}\\ \ ......
题解 Musical 1899D Yarik Notes

【题解】JLOI2016 - 成绩比较

【题解】JLOI2016 - 成绩比较 https://loj.ac/p/2026 是我会的题,所以感觉难度不如 noip T3T4。 设 \(f_{i,j}\) 表示考虑到前 \(i\) 门课,有 \(j\) 人被 B 碾压。 转移,设这轮中有 \(k\) 个原本被碾压的人不再被碾压,则相当于从 ......
题解 成绩 JLOI 2016

CF1898 C Colorful Grid 题解

Link CF1898 C Colorful Grid Question 给出一个 \(N\times M\) 的网格图 给每一条边染色(R/B),需要存在一条长度为 \(K\) 的路径从 \((1,1)\) 到 \((N,M)\),路径允许重复通过一个节点。 Solution 非常有意思的一道题 ......
题解 Colorful 1898 Grid CF

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) ......
题解 Admirer Milena 1898 and

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 ......
题解 Entertainment Unusual 1899 CF

noip2023 题解(民间数据)

P9868 [NOIP2023] 词典(民间) 直接把每个串 \(w_i\) 都从大到小/从小到大排一下,记作 \(a_i,b_i\)。如果 \(b_i\) 小于除了 \(i\) 之外的所有 \(a_i\),说明可以,否则不行。求一个前后缀最大值即可。复杂度 \(\mathcal{O}(26n+nm ......
题解 民间 数据 noip 2023

P9713 「QFOI R1」抱抱 题解

P9713 「QFOI R1」抱抱 题解 Sol 前置知识:长方体体积公式:\(V = abh\)。 我们知道,切割掉 \(x \le k\) 的部分就是把 \(a\) 减去 \(k\),切割掉 \(y \le k\) 的部分就是把 \(b\) 减去 \(k\),切割掉 \(z \le k\) 的部 ......
题解 P9713 9713 QFOI

NEFU OJ Problem 1496 绿巨人吃绿苹果 题解

Problem:H Time Limit:1000ms Memory Limit:65535K Description 从前有一个绿巨人,他有个习惯是每餐只吃n个绿苹果。他有一棵神树,无限大,每一层都有且仅有k个枝杈,这k个枝杈上正好分别有1,2,3...,k个苹果。为了锻炼身体,他在同一层仅仅能选 ......
题解 巨人 苹果 Problem NEFU

[ABC328C] Consecutive 题解

Hello World 链接 这道题是一个很明显的前缀和,我们把 $sum_i$ 表示为前 $i$ 个字符有多少个有重复,查询的时候就用 $sum_{r-1}-sum_{l-1}$ 就行了。 代码 #include<bits/stdc++.h> using namespace std; string ......
题解 Consecutive 328C ABC 328

[ABC326C] Peak 题解

题目链接 题目思路 这个问题要求找到一个半开区间,使得在这个区间内包含尽可能多的礼物。首先,我们需要将输入的礼物坐标按照从小到大的顺序进行排序。然后,我们可以使用双指针的方法来寻找最佳的区间。 代码 以下是代码解释: #include<bits/stdc++.h> using namespace s ......
题解 326C Peak ABC 326

CF222A Shooshuns and Sequence 题解

分析 这题是一个很水的题,就是对一个序列有 $2$ 种操作方法,一种是对第 $K$ 个数以前的数的第一个进行删除,另一个则是在整个序列后添加这第 $K$ 个数,使得整个序列为同一个数字,显然,后者是无效操作,则只需要判断第 $K$ 个数以后有无与第 $K$ 个不同的数,有则无解,反之有解。若有解,然 ......
题解 Shooshuns Sequence 222A 222

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}\) ......
题解 Lipshitz Sequence 601B 601

NEFU OJ Problem 1489 青蛙赶路 题解【动态规划DP】

Problem:G Time Limit:2000ms Memory Limit:65535K Description 有一只青蛙,每秒选择走1米或跳m米,青蛙体力不足,所以不能连续两秒都在跳。 青蛙将移动到[l,r]之间,它想知道有多少种不同的方式来实现其目标。 两种方式是不同的,当且仅当它们移动 ......
题解 青蛙 Problem 动态 NEFU

ICPC2023深圳部分题解(A,D,E,F,G,K,L)

目录正题A 一道好题题目大意解题思路D 机器人兄弟题目大意解题思路E 二合一题目大意解题思路F 见面礼题目大意解题思路G 相似基因序列问题题目大意解题思路K 四国军棋题目大意解题思路L Mary 有颗有根树题目大意解题思路 正题 好像还没上gym所以放不了题目链接,深圳这场的题目我觉得都很好所以写个 ......
题解 部分 ICPC 2023

NEFU OJ Problem1485 贪吃蛇大作战 题解

Problem:F Time Limit:1000ms Memory Limit:65535K 题目 Description 贪吃蛇大家一定都玩过吧,现在宋哥也要玩这个游戏,最初的时候贪吃蛇从屏幕的左下角出发,但是有一个非常不幸的事情,就是宋哥的游戏机的左键和下键坏掉了,这意味着什么?没错!他只能操 ......
题解 Problem NEFU 1485 OJ

洛谷 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}\) 为 ......
题解 逻辑 P9869 9869 2023

P9782 题解

题意 给定两个字符,分别是两个 \(26\) 进制数,\(A\) 到 \(Z\) 分别表示 \(0\) 到 \(25\)。求这两个字符的和。答案同样用这种 \(26\) 进制表示。不包含前导 \(0\)。 思路 先转化成 \(10\) 进制,再转化成 \(26\) 进制即可。 而因为只有一位所以就不 ......
题解 P9782 9782

P9779 题解

思路 因为不一定是只有一个答案,也就是多选题。所以就转化成了在 \(n\) 个里面选若干个。 而每种个数必须都试一次。所以答案为: \[\sum_{i=1}^{i \le n} C_n^i \]\(C_n^m\) 表示在 \(n\) 个里面选 \(m\) 个方案数,即组合问题。 众所周知, \[2^ ......
题解 P9779 9779

SP3889 Closest Number题解

题意简述 有两个 \(n\) 位十进制数 \(a\),\(b\)。要将数字 \(b\) 的每一位重新排列后,使得得到的数字一个在大于等于 \(a\) 的情况下更接近 \(a\),另一个在小于 \(a\) 的情况下更接近 \(a\)。 求这两个数,如果找不到就输出 0。 思路 以大于等于 \(a\) ......
题解 Closest Number 3889 SP

AT_gigacode_2019_b 题解

本题考查基本语法。 思路 用 while 来枚举每一组数据,用 if 判断是否合法。 在判断时需要使用逻辑运算符 &&,它的意思是左右两个要求如果同时成立,则会返回 true,否则返回 false。 \(a \ge x\),\(b \ge y\),\(a + b \ge z\)。 这三个条件都要同时 ......
题解 AT_gigacode gigacode 2019 AT

SP3881 题解

前置知识 最短路。 思路 这就是一道很简单的最短路板子,太良心了,用堆优化的 Dijkstra 就能过。相信大家都会这个,我就不介绍了。 AC CODE #include<bits/stdc++.h> using namespace std; int dis[100005],n,m,s,t,vis[ ......
题解 3881 SP