![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
洛谷题解
文章平均质量分 64
ZH_qaq
More and more vegetables,what should I do?
展开
-
CF1692D The Clock 的题解
就可得出看手表的时间,然后再循环判断是否回文,如果说时间出现了循环(原时间又出现一次),那么就没必要继续算下去,直接停止。分钟看一次手表,求到重新看到此时间点为止一共看到了多少个回文时间点。小时制的时间点开始,每隔。原创 2023-04-08 11:09:46 · 107 阅读 · 0 评论 -
CF153C Caesar Cipher 的题解
先计算字符串长度,然后取出每一位字母,最后将取出的字母移动。输入一个由大写字母构成的字符串。时,回到字母表的开头。原创 2023-04-08 12:50:41 · 100 阅读 · 0 评论 -
CF355A Vasya and Digital Root 的题解
若没有数满足条件,请输出。,那么就无解,直接输出。原创 2023-04-06 21:15:50 · 64 阅读 · 0 评论 -
CF1571A Sequence of Comparisons 的题解
因为这题只能用 Kotlin 语言,所以在这里给大家介绍一下 Kotlin 语言中的循环语句和 C++ 语言的区别。组相邻元素的关系比较结果仍然存在。也就是说,对于每一个从。有了这些我们就可以用一个循环语句和四个分支结构来完成。但随着时间的推移,数列自身丢失了,只有。Kotlin 语言有两种循环结构,一种是。的大小关系或报告无法明确确定结果。原来,Petya 有一个整数数列。,所以请大家用 Kotlin 做。这个语句其实就是 C++ 的。你需要帮助 Petya 确定。的大小关系是否唯一。原创 2023-04-08 12:47:17 · 60 阅读 · 0 评论 -
CF1694A Creep 的题解
的前缀差最小,最后再依次输出剩余的其他数字。若有多种答案,输出任意一种。的个数相差最多的前缀,原创 2023-04-07 22:29:38 · 58 阅读 · 0 评论 -
【洛谷】P8783 [蓝桥杯 2022 省 B] 统计子矩阵 的题解
正解:这个题考的是一个双指针,枚举一下矩阵中的左右边界,在每一个左右边界中,从上往下求一下子段中小于等于。暴力:这题可以暴力写一下,求一个前缀和,然后枚举子矩阵,时间复杂度是。的数的数量(用双指针扫一下就可以,这一步可以做到。原创 2023-04-09 12:58:42 · 124 阅读 · 0 评论 -
【洛谷】P8785 [蓝桥杯 2022 省 B] 扫雷 的题解
因此我们就需要去除重复的点,记录每一个坐标下点的位置。此题不可以用并查集去做,因为雷的爆炸是由方向的,然后把每一个火箭作为根节点,去遍历周围。的雷,统计一下一共能炸多少雷就可以。正解是深搜,为了避免边被卡成。雷爆炸是有可能无法引爆。雷的(爆炸半径不同)原创 2023-04-08 13:07:04 · 124 阅读 · 0 评论 -
【洛谷】P8775 [蓝桥杯 2022 省 A] 青蛙过河 的题解
了,之后怎么也不会选择它作为落脚点,我们可以用数据结构,这里是并查集,将该点往前路径压缩,这样就避免了。但根据我们之前的跳跃模拟,是一个双重 for 循环的结构,这样显然会超时。可以注意到,对于任意一个位置。我们只需要用一个数组记录每个石头位置能承载的最大跳跃次数(在自身高度限制下),for 循环对于每个。二分青蛙的跳跃能力,找到最大的能过河的情况。往右边传递自身的承载。题意很清晰,需要注意的点是,青蛙要往返。肯定会有一个承载值,判断该值是否为。的查找,每个点最多被遍历一次。,这就是我们的二分判断了。原创 2023-04-09 13:01:58 · 217 阅读 · 0 评论 -
【洛谷】P8787 [蓝桥杯 2022 省 B] 砍竹子 的题解
只要它高度降到了与前一个高度下降过程中的公共值,那么它就不需要花费代价继续下降。如果它降得的当前高度与前一个高度没有公共值,则需要多花费一个代价,来降低自己的高度。我们只需要开两个数组暴力做一下就行。这个题有两个做法,一种是用 set 或者堆来维护一个高度到区间的映射,另一个用并查集维护区间。这个题本质是一个最长公共下降子序列的问题,对于任意一个。原创 2023-04-08 13:20:48 · 280 阅读 · 0 评论 -
UVA10432 Polygon Inside A Circle 的题解
边形的面积就是 $n \times r^2 \times \sin\frac{2\pi}{n}\div 2 $。,每个三角形的面积就是 $r^2 \times \sin\frac{2\pi}{n}\div 2 $。个三角形,每个三角形夹角就是。的精度要求较高,要多打几位。使用的是弧度制,要转换成。原创 2023-04-06 21:59:43 · 66 阅读 · 0 评论 -
UVA12820 Cool Word 的题解
这题运用字符串和暴力的方法,判断是否由两个不同字母组成,且每个不同的字母出现次数不同。最后把出现的次数排序,再判断是否出现重复的。如果没有出现重复就把。很酷的单词指的是一个单词至少由两个不同字母组成,且每个不同的字母出现次数都不相同。对于每次询问,请输出询问的编号和“很酷的单词”的数量。个单词中有几个“很酷的单词”。次询问,每次询问给出。最后输出询问的编号和。原创 2023-04-08 11:10:19 · 70 阅读 · 0 评论 -
【洛谷】P8741 [蓝桥杯 2021 省 B] 填空问题 的题解
确定一条直线的方式有很多种,但是我们知道,一个斜率和一个截距将会唯一确定一条直线,所以我们枚举所有的点,算出所有两点确定一条直线的斜率和截距,然后通过。思路:这道题直接就用 floyd 算法跑就行,反正填空题也不怕超时,三层循环等个几十秒就出来了。,因为刚好到该数的时候超过限制值,所以只能拼到该数的前一个数。去重,找到其中不一样的,横线和竖线很好算,这个单独考虑。这些方案中的每一个长宽高都将是。直接暴力求解,主要最后的结果。的因子,所以这题就转化为求。这题没什么好说的,直接暴力。的因子中寻找可能的方案数。原创 2023-04-09 13:01:21 · 111 阅读 · 0 评论 -
【洛谷】P3544 [POI2012]BEZ-Minimalist Security 的题解
都确定下来了,并且那些点的权值都可以用。表示出来可以得到一个不等式组。是确定的,所以只要确定了一个点。因此一个联通块的答案。,和它在同一个联通块的所有点。原创 2023-04-08 12:51:35 · 53 阅读 · 0 评论 -
UVA10235 Simply Emirp 的题解
首先用埃氏筛判断这个数是否是素数,然后将这个数翻转,判断这个数反转后是否为素数。,所以不能使用暴力筛法。这里我用的是埃氏筛。如果是素数但反转后的数不是素数,就输出。如果是反转后的数还是素数,就输出。如果不是素数,就输出。原创 2023-04-07 22:28:35 · 93 阅读 · 0 评论 -
AT_cf_2015_relay_e 反転時計 的题解
所以,先将时针和分针进行相减,然后将两个时间转换为分钟,最后进行判断。现在有一个时钟翻转的功能,只能在正午之前使用,即把。分转换到时钟上,将分针和时针分别逆时针旋转。度,得到一个更早的时间。PS:岛国题目输出后要加换行。原创 2023-04-06 12:01:15 · 70 阅读 · 0 评论 -
CF792B Counting-out Rhyme 的题解
我们可以先进行取模,这样可以避免循环过多,然后一直循环,标出要删除的孩子的位置。删除我们可以运用队列中的。个孩子在玩一个游戏。孩子们站成一圈,按照顺时针顺序分别被标号为。最后数到的那个孩子出局,再下一个孩子成为新的领导。轮中,领导会从他顺时针方向下一个孩子开始数。开始游戏时,第一个孩子成为领导。来做,我这里就用队列来做吧。这题是个不错的队列模板题。输出此时队列内元素个数。首先先讲点队列的知识。原创 2023-04-08 12:41:17 · 92 阅读 · 0 评论 -
【洛谷】P8612 [蓝桥杯 2014 省 AB] 地宫取宝 的题解
这样就可以在到达一个搜索状态的时候,先去判断这个状态是否已经计算,如果计算过就直接返回之前的结果。至于为什么是四维数组,这是因为 dfs 的参数有四个,四维分别对应 dfs 的四个参数。在四个参数不变的前提之下,这个状态的 dfs 还是会被计算多次。,但数组是没有负下标的,因此在记忆的时候选择将。第一眼审题看到从左上角走到右下角,dfs。走到一个位置依据已拿宝物的最大价值。注意点:因为宝物价值是有可能为。,通过偏移量来解决数组越界问题。点,如果之前的拿宝数都是。,然后后面几步不拿宝,到。原创 2023-04-08 13:05:22 · 120 阅读 · 0 评论 -
【洛谷】P8784 [蓝桥杯 2022 省 B] 积木画 的题解
来表示当前层的状态,类似于背包的滚动数组优化。表示当前列上面有一个格子,表示当前列下面有一个格子,由于数据很大,开一个。原创 2023-04-08 13:16:57 · 232 阅读 · 0 评论 -
【洛谷】P8601 [蓝桥杯 2013 省 A] 剪格子 的题解
分成两部分,两部分的数字和相同,dfs 去创造路径,然后比对路径上的数字和与剩余点的数字和。之后不再可能出现成立的路径。原创 2023-04-09 13:00:28 · 73 阅读 · 0 评论 -
【洛谷】P8792 [蓝桥杯 2022 国 A] 最大公约数 的题解
这样每个数我们都定为左端点去二分它的右端点,所有答案取最小值就能找出。既然二分就需要满足二段性,根据上一段的描述,我们可以知道,如果。这个操作,直接暴力肯定不可取,所以我们应该联想到线段树来进行查询。对于数组中的每个数我们都可以固定为左端点。,那么就是我们需要在数组中找到最短的子数组,使得它们的。这也非常容易理解,如果存在一个数组的。,我们首先要明白——如果一段子数组的的。的情况下,我们需要使用最少的步数获得。,然后去二分它的右端点,求出使得区间。,那么这个数组无论再加上任何正整数,原创 2023-04-05 11:16:02 · 319 阅读 · 1 评论 -
UVA12459 Bees‘ ancestors 的题解
输出斐波那契额数列的第。原创 2023-04-05 11:25:42 · 46 阅读 · 0 评论 -
【洛谷】P8786 [蓝桥杯 2022 省 B] 李白打酒加强版的题解
P8786 [蓝桥杯 2022 省 B] 李白打酒加强版的题解原创 2023-03-18 14:28:05 · 234 阅读 · 1 评论 -
SP8319 GLJIVE - GLJIVE的题解
个数字,计算其前缀和。因为可能会差相同,而我们要大的那个数,所以要倒着遍历,找出答案。个整数,找到一个前缀和,使得它与。的差值相同,取大的那一个。原创 2023-04-05 11:26:10 · 58 阅读 · 0 评论 -
UVA10499 The Land of Justice 的题解
表面积增加了百分之多少?输入以一个负数结尾,该负数不参与计算。原创 2023-04-05 11:30:03 · 68 阅读 · 0 评论 -
UVA10365 Blocks 的题解
暴力枚举长宽高,根据:差小积大的原理,可以证明长宽高相差越近越好。的立方体,拼成一个长方体,计算最小的表面积。函数取最小值输出即可。原创 2023-04-05 11:27:01 · 59 阅读 · 0 评论 -
AT_abc157_b [ABC157B] Bingo 的题解
个数中,有相同的就打上一个标记。最后再判断表上的三个标记数字是否在同一行同一列或对角线上。,也就是说,表上会有三个标记的数字在同一行、一列或对角线上。,所以,我们可以用一个一维数组或者二维数组。卡包含这些数字中的一些,我们将在表上标记它们。个数字被报完时,我们是否有一个。你是游戏的一个玩家。原创 2023-04-05 11:25:42 · 82 阅读 · 0 评论 -
AT_sumitb2019_f Interval Running的题解
问甲乙两人有多少次相遇,若一直可以相遇则输出 infinity。有甲、乙两人在一条无限长度的跑道上跑步,在开始。分钟内甲、乙的速度分别为。分钟内甲、乙的速度分别为。秒时,甲乙的距离,在。原创 2023-04-05 11:27:18 · 77 阅读 · 0 评论 -
UVA12157 Tariff Plan 的题解
次通话时间,求订购 Mile 套餐的花费与 Juice 套餐的花费的最小值,每次通话独立。算出两套餐的价格,再比较大小,最后输出即可。Juice 套餐:每通话。Mile 套餐:每通话。有多组数据,每组给定。原创 2023-04-05 11:19:29 · 74 阅读 · 1 评论 -
AT_code_festival_relay_j Color Game 的题解
个距离相等的白色石头,有两人用这些石头做游戏。规则就是每个玩家轮流选择白色石头并将其变为黑色,但是不能从前一回合变黑的石头中选择距离在。无法选择白色石头的玩家失败。在这个游戏中,双方采用最优策略,询问先涂必胜或者后涂必胜。为奇数,那么最后一定会先手方涂黑一个石子后,后手方无处可下。为偶数,那么最后一定会后手方涂黑一个石子后,先手方无处可下。,先手方直接把中间的石子涂黑,对方就输了。PS:岛国题目输出后要加空格。原创 2023-04-06 11:59:58 · 53 阅读 · 0 评论 -
CF1570A A+B (Trial Problem)的题解
Kotlin可以编译成 Java 字节码,也可以编译成 JavaScript ,方便在没有 JVM 的设备上运行。除此之外 Kotlin 还可以编译成二进制代码直接运行在机器上。Kotlin(科特林)是一个用于现代多平台应用的静态编程语言,由 JetBrains 开发。这题思路没有什么难度,就是输入循环次数,然后输入。首先我们了解一下什么是 Kotlin 语言,,所以请大家用 Kotlin 做。PS:不用 Kotlin 会。原创 2023-04-05 11:18:08 · 92 阅读 · 0 评论 -
CF409E Dome的题解
PS: 本题为CodeForces 2013年的愚人节题目。我们又可以跟据内切球半径公式推断出底边长为。所以可以用枚举的方法。原创 2023-04-05 11:21:17 · 52 阅读 · 0 评论 -
AT_abc210_d [ABC210D] National Railway 的题解
所以如果我们建好了一个站,那么相当于我可以行走到下一个地点再建一个站,所以我们可以先记录好前半部分的最小花费。,为了考虑全面,我们遍历的方向实际上就是东北和东南方向。数组之后,还有一点就是如何确定最后一个地铁站建在哪最优,哪很明显,我们直接遍历。大小的地点,问你需要选择两个地点建地点站,并在其之间建立轨道,问最小花费。根据题意,实际上建立轨道的花费相当于是它们的曼哈顿距离。来表示已经建好了一个地铁站,且已经走到了。数组再枚举我们建立的地铁站即可。原创 2023-05-01 19:25:13 · 162 阅读 · 0 评论 -
【洛谷】P8646 [蓝桥杯 2017 省 AB] 包子凑数 的题解
在合适的范围内将所有可以凑出的数枚举出来,然后用总数减去凑出的数的数目就是答案了。题上要问的是凑不出的数目,如果直接推断哪个数不可能凑出是非常困难的。的数的倍数,就会有无数个的数无法凑出,毕竟这样的。这件事情,最大的不可能凑出的数也不会超过。样例二的输入其实已经给出了答案,如果所有的。不互质,也就是说它们都是某一个大于。数组来标记每一个数能否被凑出,首先。有了这个公式以后,思路也就明朗了,对。可以被凑出,那么由这个数与每个。肯定是可以的,也就是不买。最大的不可能凑出的数是。所能构造出的数都是它们。原创 2023-04-22 13:00:05 · 192 阅读 · 0 评论 -
【洛谷】P8685 [蓝桥杯 2019 省 A] 外卖店优先级 的题解
这就需要将所有订单按主关键字为订单时间,副关键字为外卖店进行排序,所以可以考虑用 pair 来存放每一单订单。注意到同一时刻同一家店是可能有多个订单的,所以可以将这些订单一次性处理。之间可能有差距,订单模拟结束后要注意计算这一段空档期的优先级。如果订单只是一单一单处理是过不了所有的数据的,所以需要优化。与每家店的最后一单时刻。原创 2023-04-19 21:23:02 · 145 阅读 · 0 评论 -
AT_abc195_e [ABC195E] Lucky 7 Battle 的题解
计算重复率较高,所以这题可以使用记忆化搜索来解决。这题首先很容易想到使用搜索。原创 2023-04-22 13:19:56 · 163 阅读 · 0 评论 -
【洛谷】P8715 [蓝桥杯 2020 省 AB2] 子串分值 的题解
以每一位的字符为子串子元素的只有那么几个,把每一个位字符的贡献度求出来,然后求个和,这样就得到结果了。对整个字符串产生的贡献数就是前面得到的区间里能够生成的包含。出现相同的字符的时候,把每一位的字符前一次出现的位置。,避开其前后出现的位置之后,就可以利用区间。这题是典型的线性相加变成多项乘法和的思想。找出来,避开这些地方去构造子串。在这个区间里随便找出一个含有。的子串,那这个子串里。一定有贡献的子串了。原创 2023-04-09 17:33:53 · 129 阅读 · 0 评论 -
【洛谷】P8716 [蓝桥杯 2020 省 AB2] 回文日期 的题解
首先看到八位的整数,还是回文的,一个一个枚举判断八位数是不是回文的实在是太慢了,最好的方法是自己动手构造。同时我们应该注意,并不一定所有的回文串都符合日期格式,所以需要判断。这前四位,然后直接构造回文串,存储下来,根据题意查询到即可。最后按照输入的时间,进去查询就可以,在找到一个。一旦考察到年份就要想到闰年这个特殊的东西。原创 2023-04-12 22:44:29 · 116 阅读 · 0 评论 -
【洛谷】P8744 [蓝桥杯 2021 省 A] 左孩子右兄弟 的题解
接下来思考,我这一层的结点里有好多结点是带孩子的,应该选这一层的哪个结点作为最下层的一个结点,也就是这一层的构造该以哪个结点结尾,现在需要想到一件事情。先想右子树(兄弟结点),我这一层结点对右子树所能贡献的最大高度就是这一层结点的个数,不管他们的孩子,直接线性排列。最终这个题就相当于一个深搜,从上到下不断的探索每个结点能贡献的最大高度,把每一层的结点数加上就好了。也就是说,要将子结点贡献高度最大的那个结点作为当前层构造的尾结点。线性排列的前提下,这棵树要想高度最大,就应该将结点。的子结点,然后高度是。原创 2023-04-09 13:02:06 · 108 阅读 · 0 评论 -
【洛谷】P8713 [蓝桥杯 2020 省 A2] 填空问题 的题解
如果只有直线,要想构造的分割块最多,那么新添加的直线就要与之前所有的直线相交,而且不能经过之前的直线所形成的交点。首先必须记住一点,这个圆的大小是任意的,这也是直线和圆能分开考虑的关键。每条管(或者叫边)只有发光和不发光两种状态,所以可以状压,去用一个。看到这个题,首先会发现是无法用程序去模拟分割的,所以肯定有一定的规律。记录要填的数,数组里存的数字表示该位置应该填的数,的格子数就可以模拟完的,数组得开大点。这题没什么好说的,就直接暴力枚举就行。条直线时,其可划分出的部分最多为。串表示该七段码管的状态。原创 2023-04-12 22:46:26 · 162 阅读 · 0 评论 -
【洛谷】P8774 [蓝桥杯 2022 省 A] 爬树的甲壳虫 的题解
的等比数列求和,运用等比数列求和公式可得。为质数,根据费马小定理,运用快速幂求逆元。(理解为第一次掉下去,第二次上去)。(理解为前两次掉下去,第三次上去)。只走一次上去的期望时间是。只走两次上去的期望时间是。只走三次上去的期望时间是。的概率向上移动一次。一次上去的期望时间是。两次上去的期望时间是。三次上去的期望时间是。原创 2023-04-09 13:02:48 · 176 阅读 · 0 评论