题解wag-quaternary quaternary balance

P7974 题解

解题思路 首先可以确保每一次列的方向一定不会与 \(s\) 到 \(t\) 的方向相反。 不妨设 \(l=\min\{s,t\}\),\(r=\max\{s,t\}\)。 对于每次移动,所花体力值如下: 显然,从 \(l\) 到 \(r\),一定要翻过 \([l,r]\) 间最高的一个,区间最大我们 ......
题解 P7974 7974

P4814 题解

解题思路 对于每条边 \((u,v)\),权值为 \(w\),假设存在一条经过这一条边的路径,其最短距离为 \(a\) 到 \(u\) 的最短路加上 \(v\) 到 \(b\) 的最短距离加上 \(w\),若这个值都大于 \(d\),则不可能关闭这条边。 由于边权非负,所以可采用 dijkstra ......
题解 P4814 4814

P1124 题解

题目大意 一个长度为 \(n\) 的字符串 \(S\),进行以下操作。 假设 \(s\) 为 acbdef,每一次将首字母移至末尾,得到 \(6\) 个字符串: acbdef cbdefa bdefac defacb efacbd facbde 将每个字符串的首字母排序: acbdef bdefac ......
题解 P1124 1124

C++常见入门题题解

前言 因为本人目前比较菜,所以给出的题解都是按照自己的学习进度来的,所以难度是一个循序渐进的过程,由于本人水平有限,望读者能够指出谬误,共同进步。 回文数输出 #include <bits/stdc++.h>//万能头 using namespace std; int main(void) { ve ......
题解 常见

题解 CF1651F【Tower Defense】

一个塔防游戏。 一共有 $n$ 个塔按 $1 \sim n$ 的顺序排成一列,每座塔都有魔力容量 $c_i$ 和魔力恢复速率 $r_i$。对于一座塔 $i$,每过一秒它的魔力 $m_i$ 会变为 $\min(m_i+r_i, c_i)$。每座塔初始时满魔力。 一共有 $q$ 个怪物,每个怪物有两... ......
题解 Defense 1651F Tower 1651

【题解 CF840C & P4448】 On the Bench & 球球的排列

On the Bench 题面翻译 给定一个序列 \(a(a_i\le 10^9)\),长度为 \(n(n\le 300)\)。 试求有多少 \(1\) 到 \(n\) 的排列 \(p_i\),满足对于任意的 \(2\le i\le n\) 有 \(a_{p_{i-1}}\times a_{p_i} ......
题解 amp Bench P4448 4448

P9506 题解

blog。First solution /kx。 容易想到断环成链。打开标签发现是 DP,于是就可以 DP 了。 code,时间复杂度 \(O(\text{能过})\)。 ......
题解 P9506 9506

NOIP2018PJ T3 摆渡车(2023.10第二版题解)

题目链接 题意: 时间轴上分布着$n$位乘客($1\le n\le 500$),$i$号乘客的位置为$t_i$(0\le t_i\le 4\times 10^6),用互相距离不小于$m$的车次将时间轴分为若干部分,并管辖以自己为右端点的这个区间(除了第一趟车包括$0$,其他车次左开右闭),求最小费用 ......
题解 摆渡 2023.10 NOIP 2018

AT_arc100_b 题解

题意 这道题是让我们把一段区间分成四个不为空的连续子序列,并算出每个区间的和,最后用四个和的最大值减去最小值,算出最终答案。 分析 大家首先想到的肯定是暴力法用三个循环枚举四个区间,对于每一个区间,在单独算和,这样的时间复杂度 $O(n^4)$,肯定会超时。 现在我们进行优化:最后求和的过程我们可以 ......
题解 AT_arc 100 arc AT

SP26719题解

考虑动态规划。 思路 设 \(dp_{i,j}\) 为 \((1,1)\) 到 \((i,j)\) 的方案数,而如果要到这个点,肯定是从左边和上边来。 所以递推公式为:\(dp_{i,j}= dp_{i,j-1} + dp_{i-1,j}\)。 预处理:将横或纵坐标为 1 的点赋值为 1,因为到达这 ......
题解 26719 SP

P9700题解

思路 看数据范围,发现范围很小,直接用搜索。 搜索时枚举每个点,如果有棋子就枚举方向,如果这个方向合法,则将剩余棋子数减一,继续搜索。 搜索时参数只需要传当前棋子数就行了。 有以下几点需要注意 多组数据每次需要初始化。 判断是否合法时要注意。 每次记得回溯棋子。 AC CODE #include<b ......
题解 P9700 9700

CF1873B题解

这题其实可以数学方法差小积大解决。 差越小积越大,那肯定是让最小的数加一啦。将所有数的积除以最小值再乘上最小值加一。 #include<bits/stdc++.h> using namespace std; signed main(){ int T; cin>>T; while(T--){ long ......
题解 1873B 1873 CF

AT_abc134_d Preparing Boxes题解

简述题意 这什么破翻译,看了 AtCoder 的英文才看懂。 给定一个长度为 \(n\) 序列 \(a\),要求构造一个数列 \(b\),使得对于任意 \(i\),满足: \(1 \le i \le n\) 将 \(b\) 序列下标为 \(i\) 的倍数的值相加使得这个总和模 2 等于 \(a_i\ ......
题解 Preparing AT_abc Boxes 134

P4899 [IOI2018] werewolf 狼人 题解

P4899 [IOI2018] werewolf 狼人 题解 题目描述 省流: \(n\) 个点,\(m\) 条边,\(q\) 次询问,对于每一次询问,给定一个起点 \(S\) 和终点 \(T\) ,能否找到一条路径,前半程不能走 \(0\thicksim L-1\) 这些点,后半程不能走 \(R+ ......
题解 werewolf P4899 4899 2018

【题解 P8773】 选数异或

[蓝桥杯 2022 省 A] 选数异或 题目描述 给定一个长度为 \(n\) 的数列 \(A_{1}, A_{2}, \cdots, A_{n}\) 和一个非负整数 \(x\), 给定 \(m\) 次查询, 每次询问能否从某个区间 \([l, r]\) 中选择两个数使得他们的异或等于 \(x\) 。 ......
题解 P8773 8773

CF1868C Travel Plan 题解

原题 翻译 发现所有长度相同的简单路径的权值可能情况相同,且最长的简单路径长度为 \(O(\log n)\) 级别,考虑维护所有长度的简单路径在一棵树上出现的次数,每种简单路径的权值在所有树上出现的次数,相乘即使答案。 我们考虑长度为 \(x\) 的路径对答案的贡献,考虑枚举这条路径的贡献 \(k\ ......
题解 Travel 1868C 1868 Plan

【dp】【竞赛图的性质】ARC163D Sum of SCC 题解

ARC163D 发现这个竞赛图一定能被分为两个集合 \(A\),\(B\)。满足 \(\forall u\in A,v\in B\),均有 \(u\to v\in E\)。答案就是划分这两个集合的方案数。 证明: 首先,竞赛图缩完点后一定是一条链,对强连通分量进行标号,满足编号小的强连通分量指向编号 ......
题解 性质 163D ARC 163

【根号分治】P9212 「蓬莱人形」 题解

P9212 看到除法相关容易想到根号分治。 先对 \(x,y\) 进行讨论,不妨令 \(0\le x,y<m\)。 \(x<y\) 时,当满足 \(a_i+y < m\) 或 \(a_i+x\ge m\) 时,即当 \(a_i<m-y\) 或 \(a_i\ge m-x\) 满足 \((a_i+x)\ ......
根号 题解 人形 P9212 9212

【前缀和优化 dp】CF1542E1 Abnormal Permutation Pairs (easy version) 题解

CF1542E1 首先时间复杂度肯定是 \(\mathcal{O}(n^3)\) 的。 容易想到先枚举最长公共前缀,然后枚举 \(p_{len+1}\) 和 \(q_{len+1}\),再枚举逆序对数进行统计。 令 \(f_{i,j}\) 表示有 \(j\) 个逆序对的 \(i\) 阶排列的个数。 ......
题解 前缀 Permutation Abnormal version

【前缀和优化 dp】CF1542E2 Abnormal Permutation Pairs (hard version) 题解

CF1542E2 首先时间复杂度肯定是 \(\mathcal{O}(n^3)\) 的。 容易想到先枚举最长公共前缀,然后枚举 \(p_{len+1}\) 和 \(q_{len+1}\),再枚举逆序对数进行统计。 令 \(f_{i,j}\) 表示有 \(j\) 个逆序对的 \(i\) 阶排列的个数。 ......
题解 前缀 Permutation Abnormal version

【树上背包】CF1856E1 PermuTree (easy version) 题解

CF1856E1 发现题目的要求只需要相对的大小关系,考虑一个子树时,不妨令子树内部编号连续。类似于一个 dp,这样也可以更好地将信息由儿子转移到父亲。 设 \(u\) 的孩子为 \(v_1,v_2,\dots,v_k\)。由于每棵子树内的编号是连续的,令以 \(v_i\) 为根的子树的编号为 \( ......
题解 背包 PermuTree version 1856E

【区间 dp】P5189 [COCI2009-2010#5] ZUMA 题解

P5189 容易想到区间 dp,考虑设计状态。 首先如果只有 \(l,r\) 两维的话,是无法转移的。然后发现 \(m\) 是转移的一个必要的条件,可加入 \(m\) 这一维。由于是区间 dp,所以只需考虑向左或向右加珠子,不妨令 \(f_{i,j,k}\) 消除 \([i,j]\) 以及 \(i\ ......
题解 区间 P5189 5189 2009

【dp】【进制】P3464 [POI2007] WAG-Quaternary Balance 题解

P3464 显然的,先将原数变为四进制的数。 由于算的是进位/不进位的代价最小值和方案数,容易想到 dp。 这里假定该四进制数是从高位到低位的,顺序显然是由低位到高位。 令 \(f_{i,0/1}\) 表示第 \(i\) 位进 / 不进位的最小代价,\(g_{i,0/1}\) 表示的是最小代价下的方 ......

[题解] CF1790E - XOR Tree

CF1790E - XOR Tree 题意 给定一颗无根树,在可以改变任意一个点的点权操作基础上,让树上任意简单路径的异或和不为 \(0\) ,问最少需要多少次操作。 思路 假设某个点为根,设 \(pre_x\) 为 \(x\) 点到根的树上前缀异或和, \(a_x\) 为 \(x\) 的点权,则 ......
题解 1790E 1790 Tree XOR

[题解]CF514D R2D2 and Droid Army

思路 首先,可以转化题意,找到一个极长的区间 \([l,r]\) 使得(其中 \(mx_i\) 表示 \([l,r]\) 区间中属性 \(i\) 的最大值): \[\sum_{i = 1}^{m}mx_i \leq k \]显然对于这个东西当 \(l,r\) 发生移动时,是极其好维护的,所以想到双指 ......
题解 Droid 514D Army R2D2

题解——2023年码谷提高组模拟赛1016

题解——2023年码谷提高组模拟赛1016 一套被各种转来转去的题;参考:https://blog.csdn.net/liuziha/article/details/127353981、https://www.luogu.com.cn/blog/Chen5201314/xiao-nei-bi-sai ......
模拟赛 题解 2023 1016

「BZOJ2505」tickets 题解

preface 网上目前还没看到我的方法,就大概讲一下做法 solution 首先想到贪心,考虑 \([l, r]\) 的最大次数,一定是找到最小的 \(x\) 满足 \(l \sim x\) 的位数的和大于等于 \(k\),然后递归的求解 \([x + 1, r]\),易证。 还是考虑将 \(Qu ......
题解 tickets BZOJ 2505

CF1879F Last Man Standing 题解

原题 翻译 观察题目,容易发现当题目难度为 \(x\) 时一个 OIer 存活时间为 \(h_i \lceil \frac{a_i}{x} \rceil\) 发现 \(a_i\) 较小,所以我们先考虑暴力枚举 \(x \in [1, \max a_i]\) ,然后把原数组按 \(a_i\) 排个序, ......
题解 Standing 1879F 1879 Last

CF1680F Lenient Vertex Cover 题解

CF1680F Lenient Vertex Cover 题解 这道题和「JOISC 2014 Day3」电压非常类似,或者说就是一道题。 题意就是给你一个图,问能否对所有点黑白染色,允许最多一条边的两个顶点都染成黑色。 黑白染色后其实就是一个二分图,那如果有一条边的两个顶点染成黑色,就是说去掉该边 ......
题解 Lenient Vertex 1680F Cover

题解:CF237D

题目传送门 思路 构造 \(k\) 个集合,使这些集合满足以下性质: 集合的并集为 \(V\)。 对于树 \(s\) 中的任意一条边 \((a,b)\),都能在 \(k\) 个集合中找到一个集合 \(x\) 使得 \(a,b\in x\)。 对于树 \(s\) 中的任意一个点 \(a\),所有在 \ ......
题解 237D 237 CF