题解inversions another problem

ARC166 A Replace C or Swap AB 题解

Link ARC166 A Replace C or Swap AB Qustion 给出两个长度相同的由 \(A,B,C\) 组成的字符串 \(X\) 和 \(Y\) 。 需要使用一些操作使得 \(X\) 和 \(Y\) 一样 将 \(X\) 中的 \(C\) 换成 \(A\) 将 \(X\) 中 ......
题解 Replace Swap ARC 166

T402161 run 题解

Link T402161 run Question 亮亮总共要跑 \(n\) 圈,可以分成多次,但是每次跑的圈数必须要比上一次跑的多,求跑完 \(n\) 圈的方案数 Solution 显然动态规划 定义 \(F[i][j]\) 表示一共跑了 \(i\) 圈,最后一次跑了 \(j\) 圈的方案数,转移 ......
题解 T402161 402161 run

AT_pakencamp_2020_day1_f Fibonaccyan(暂无评定) 题解

题目链接 题目大意: 给定数 \(P\),寻找能把 \(P\) 整除的最小的斐波那契数,然后输出它是斐波那契数列中的第几个,找不到输出的话就输出 -1 。 分析: 主要代码: a[i]=(a[i-1]+a[i-2])%p 思路: 先将 \(a\) 数组的第一项和第二项都初始化为 1 ,然后判断是不是 ......

P1091 合唱队形题解(普及/提高−) 题解

题目传送门 这道题是一个很经典的动态规划。 因为合唱队形的身高是从低——高——低来排的,所以就可以利用分治的思想将队形分成两个部分:低——高是最长上升子序列;高——低是最长下降子序列。 这道题其实可以用二分查找来优化,可是这题n≤100,没有必要优化,需优化题详见P1020 导弹拦截。 做法详见代码 ......
题解 队形 P1091 1091

P3370 【模板】字符串哈希(普及−) 题解

题目链接 题目大意 如题,给定 \(N\) 个字符串(第 \(i\) 个字符串长度为 \(M_i\),字符串内包含数字、大小写字母,大小写敏感),请求出 \(N\) 个字符串中共有多少个不同的字符串。 不知道大家知不知道一个字符串函数,叫 \(insert\) 他是 \(STL\) 库中的一个函数, ......
题解 字符串 字符 模板 P3370

CF1837C Best Binary String(普及−) 题解

题目传送门 题目描述 给定由 1 0 ? 所组成的字符串,你需要用 0 或 1 替换 ?。 我们将 \(s_l,s_{l+1},\dots,s_r\) 反转称为一次操作。 你要使通过“反转”操作使原字符串成为升序的操作次数尽可能的小。 分析 通过观察,我们可以发现一个规律: 若 \(s_i\) 为 ......
题解 Binary String 1837C 1837

P5867 [SEERC2018] Fishermen(暂无评定) 题解

题意 有 \(n\) 条鱼,\(m\) 个渔夫,且这 \(m\) 个渔夫都在横坐标轴上,每个渔夫都有一个长度为 \(l\) 的鱼竿,当鱼和渔夫距离小于或等于 \(l\) 时,鱼能被钓到。 并且渔夫 \((x,0)\) 与鱼 \((a,b)\) 的距离(假设为 \(L\) )满足如下公式 \(|a − ......
题解 Fishermen P5867 SEERC 5867

P9570 「NnOI R2-T2」Glaciaxion( 普及−) 题解

这道题是洛谷基础赛的第二题 想必各位都AC了吧 没有AC的现在赶紧去做 题目传送门:传送门(最好别点)点了别怪我没提醒 题目链接:传送门< 点这个 做过的直接看下面就行 「NnOI R2-T2」Glaciaxion 题目描述 冰封的世界可以看作是 $ n $ 块初始时冷冻的冰川,这些冰川被编号为 \ ......
题解 Glaciaxion P9570 9570 NnOI

P1029 最大公约数和最小公倍数问题(普及−) 题解

题目传送门 想要做这题,我们要先了解一下最大公约数。 最大公因数,也称最大公约数、最大公因子,指两个或多 个整数共有约数中最大的一个。a,b的最大公约数记为 (a,b),同样的,a,b,c的最大公约数记为(a,b, c),多个整数的最大公约数也有同样的记号。求最大公 约数有多种方法,常见的有质因数分 ......

P5451 [THUPC2018] 密码学第三次小作业 题解

P5451 [THUPC2018] 密码学第三次小作业 题解 已知 \((e_1, e_2) = 1\)。 \[\begin{matrix}c_1=m^{e_1}\bmod N\\c_2=m^{e_2}\bmod N\end{matrix} \]现在,已知 \(c_1\) ,\(c_2\),\(e_ ......
密码学 题解 密码 P5451 THUPC

OI_problem 玛丽卡_洛谷P1186

题意 一个 \(N\) 个点 \(M\) 条边的带边权无向图,要求输出最小的 \(V\) 使得不管去掉哪一条边,都存在从 \(1\) 到 \(n\) 的路径使得边权和不超过 \(V\) 。 思路 感觉朴素不太好做,考虑二分。 对于一个二分值,即要判断在关于这个值的生成图中, \(1\) 和 \(n\ ......
OI_problem problem P1186 1186 OI

P8543 「Wdoi-2」纯粹的复仇女神 题解

自己的套路还是见少了。 思路 考虑扫描线。 每一个颜色的 \(\min\) 具有单调性,这个很好看出来。 可以使用一个单调栈来维护。 这里都是朴素的。 考虑如何维护。 我们发现在通过单调栈维护的时候。 需要支持撤销上一个元素对区间的影响。 我就在这里卡了很久。 我们有一个很暴力的想法。 我们每一次区 ......
复仇女神 题解 女神 P8543 8543

P9058 [Ynoi2004] rpmtdq 题解

支配点对实在是太有意思了。 本质上就是一个合法的减枝。 思路 考虑维护树上路径问题。 容易想到点分治。 考虑在当前的分治中心 \(\text{rt}\),每个点到当前分治中心的距离为 \(dp_x\)。 求出每一组点对的贡献。 假设每个点对在距离长的那部分贡献,即 \(dp_i>dp_j\),求出所 ......
题解 rpmtdq P9058 9058 2004

P1002题解

思路 设 \(dp_{i,j}\) 表示第 \(i\) 行 \(j\) 列卒走到这里有多少种方式。 卒是可以向右和下走,所以到这个点只能从左或上来,不难得出转移公式:\(dp_{i,j} = dp_{i-1,j}+dp_{i,j-1}\)。 如果马在这个点上或者说马能到这个点上,那么卒不能到这个点, ......
题解 P1002 1002

P1003题解

简单模拟题。 思路 枚举每一个地毯,因为后面的会覆盖前面的,所以从正序枚举。如果要求的点的坐标在当前地毯上,则将答案赋值为当前地毯编号。 最后输出答案。 那如果这个点没有地毯呢?答案初始设为 \(-1\),这样没有地毯覆盖的话,答案不会改变,这样输出答案就会是 \(-1\)。 注意: 记得赋初始值。 ......
题解 P1003 1003

P1135题解

思路 我写的好像是动规的做法。 设 \(f_{i,j}\) 表示第 \(i\) 步 \(j\) 个点是否可以走到,值要么为 \(1\),要么为 \(0\)。最多走 \(n\) 步,因为总共只有 \(n\) 个点,每一步都肯定会多延伸出一个点,要不然就重复计算。 不难得出转移公式: \(f_{i+1, ......
题解 P1135 1135

SP9199题解

考察了小学奥数知识,不会的请先去学习一下相遇与追及。 思路 两个人相遇的点一定是有周期性的,我们可以先算出一个周期会走多远,而这个距离是两人速度的最小公倍数。 接着需分情况讨论。 如果两人是同向,则为追及,需用距离除以一人的速度减去距离除以另一人的速度。需要取绝对值。 如果两人是反向,则为相遇,需用 ......
题解 9199 SP

[Codeforces] CF1703F Yet Another Problem About Pairs Satisfying an Inequality

时间限制 \(2s\) | 空间限制 \(250M\) 题目描述 给你一个序列$ a_1, a_2, \dots a_n $ 。请计算出满足下面条件的 $(i,j) (1 \leq i, j \leq n) $个数 。 $ a_i < i < a_j < j $ . 输入格式 第一行包含一个整数 $ ......

P5163 WD与地图 题解

来一发分治题解吧。 感觉和单纯的整体二分还是有一点区别。 虽然整体二分也能看作分治就是了。 思路 首先时光倒流。 删边改为加边。 这没有什么好说的,比较基础。 我们考虑在不断加边时,每两个点是在什么时候变成一个强连通分量里面的。 考虑分治。 首先在 \([l,r]\) 内选取中点 \(\text{m ......
题解 地图 P5163 5163

[Codeforces] CF1858C Yet Another Permutation Problem

Yet Another Permutation Problem - 洛谷 这题本来很简单,思路我也想到了,但是代码一直没写对,思路也一直换来换去(悲 然而发现最开始的思路是对的 题意 Alex 收到了一个名为 "GCD 排列" 的游戏作为生日礼物。这个游戏的每一轮进行如下操作: 首先,Alex 选择 ......
Permutation Codeforces Another Problem 1858C

[ABC328C] Consecutive 题解

给一个长度为 \(n\) 的字符串 \(s\),\(q\) 次询问,每一次 \(l\) 和 \(r\) 区间内有多少个 \(s_i\) 等于 \(s_{i-1}\)。 \(10^5\) 的数据 \(O(N^2)\) 暴力肯定行不通。于是我们考虑预处理前缀和,处理到 \(i\) 下标以及之前有多少个 ......
题解 Consecutive 328C ABC 328

[ABC329C] Count xxx 题解

插曲 因为本人看错了题面,买看到一个子串只包含一种字母,所以切完 D 和 E 才回来发现很简单。 问题翻译 给你一个长度为 \(N\) 的字符串 \(S\),由小写英文字母组成。 求 \(S\) 的非空子串中有多少个是一个字符的重复。在这里,作为字符串的两个子串是相等的,即使它们是以不同的方式得到的 ......
题解 Count 329C ABC 329

[ABC329D] Election Quick Report 题解

题目翻译 有一场选举,要从 \(N\) 名候选人中选出一名获胜者,候选人编号为 \(1, 2, \ldots, N\),共有 \(M\) 张选票。 每张选票正好投给一位候选人,其中 \(i\) 票投给了候选人 \(A_i\)。 选票将按照从第一张到最后一张的顺序进行统计,每张选票统计完毕后,将更新并 ......
题解 Election Report Quick 329D

AT_abc329_e [ABC329E] Stamp 题解

题目翻译 给你两个字符串:\(S\) 由大写英文字母组成,长度为 \(N\);\(T\) 也由大写英文字母组成,长度为 \(M\),小于 \(N\)。有一个长度为 \(N\) 的字符串 \(X\),它只由 # 字符组成。请判断是否有可能通过执行以下任意次数的操作使 \(X\) 与 \(S\) 匹配: ......
题解 329 AT_abc Stamp 329E

[ABC327D] Good Tuple Problem 题解

分析: 这一道题很容易发现可以用并查集来维护 (不知道为什么其他人都用了图论),\(a_i\) 与其对应的 \(b_i\) 代表着 \(a_i\) 这个集合里不能存在着 \(b_i\)。 根据只有存在两个集合,所以我们会发现,若 \(x\) 与 \(y\) 不在一个集合且 \(x\) 与 \(z\) ......
题解 Problem Tuple 327D Good

[ABC328D] Take ABC 题解

题目大意: 给你一个字符串 \(s\)。你要在其中找到多少个 ABC 的子串,例如 AABCBC 算两个,删掉中间的 ABC 后,前面的和后面的加起来也是一个 ABC,所以就算两个。 思路分析: 首先很容易写出暴力,把一个 ABC 提取出来后把后面的元素往前移,然后再重复操作,但是我们发现时间复杂度 ......
题解 ABC 328D Take 328

AT_abc324_e [ABC324E] Joint Two Strings 题解

题目大意 给你 \(n\) 个字符串 \(s\),和一个字符串 \(t\)。 问你,有多少组是 \(s_j\) 拼在 \(s_i\) 后面所组成的新字符串中,\(t\) 是其子序列。 思路 分析:\(5 \times 10^5\) 的数据肯定需要 \(O(n)\) 或 \(O(n \log n)\) ......
题解 324 Strings AT_abc Joint

洛谷 P4872 OIer们的东方梦 题解

前言 一个下午,一个晚上,一个早上,可以算是一天了吧,终于调出了这道题,纪念一下吧!!! 食用更佳。 这道题其实就是一道简简单单的 BFS 模(du)板(liu)题。 说难不难,简单不简单,虽然没有难的算法,但是就是码量一百多行,比较难调。 题目难度绿,思维难度橙,代码难度蓝。真是个绝世好题。 题目 ......
题解 P4872 4872 OIer

洛谷 P6239 [JXOI2012] 奇怪的道路 题解

P6239 [JXOI2012] 奇怪的道路 首先,拿到题面,\(n \le 30\),\(k \le 8\),这不就暴搜吗。再想想,紫题会给你暴搜的机会吗?所以进一步思考,发现这其实是一道 DP,而且数据这么小,肯定是给状压 DP 的样子。 经过一定思考,发现我们可以直接线性枚举 \([1,n]\ ......
题解 道路 P6239 6239 2012

洛谷P3161 [CQOI2012] 模拟工厂题解

P3161[CQOI2012]模拟工厂题解。题目 其实发现这是一道状压,发现这道题是一道数学题,其实就很简单了。对于每一次的订单我们可以设: \(time\) 为距离下一个订单的时间。 \(num\) 为这个订单要生产的数量。 \(x\) 为生产能力。 \(y\) 的时间可以用来提高工厂的生产力。那 ......
题解 工厂 P3161 3161 2012