题解

题解 LGP8627 [蓝桥杯 2015 省 A] 饮料换购

0 条评论 OI 题解 无标签 hycqwq
思路定义一个变量 $t$ 存储现在有多少个瓶盖,初始值为 $n$。每当 $t \ge 3$ 时,就代表可以换购饮料,于是把 $t$ 设为 $\lfloor \frac{t}{3} \rfloor$ 与 $t$ 除以 $3$ 的余数即可。代码#include <iostream> #include <algorithm> #include <cstdio> ...

题解 LGP8623 [蓝桥杯 2015 省 B] 移动距离

0 条评论 OI 题解 无标签 hycqwq
思路一道数学题。题目说不能斜着移动,就是说只能往上下左右四个方向走,于是发现这样的距离就是两点之间的曼哈顿距离。所以我们把楼房的坐标求出来,然后算一下距离即可。楼房的排列方式是左右方向动,所以在求坐标是需要判断现在是奇数行还是偶数行。代码#include <iostream> #include <algorithm> #include <cstdio> #...

题解 LGP9222 「PEOI Rd1」Morning or Afternoon

0 条评论 OI 题解 无标签 hycqwq
思路在生活中,我们经常熬到下半夜然后发现,在 $11:59$ 之后,居然是 $00:00$!于是我们把输入的小时转换成 $00 \sim 11$ 之间的数,然后我们看到样例。观察两个时间之间的大小关系。11:30 > 00:20 Yes 00:20 < 05:00 No 11:45 > 01:04 Yes 00:10 < 00:59 No 01:09 ...

题解 CF1811E Living Sequence

0 条评论 OI 题解 无标签 hycqwq
活着的序列(?所以说为什么 CF 的题会牵扯到日语啊喂!思路去掉了数码 $4$,我们只剩下了 $9$ 个数码即 $0 \sim 3$ 与 $5 \sim 9$。容易想到题目中的序列就是九进制下的正整数表,只不过把大于等于 $4$ 的数码都加了个 $1$。于是我们也可以这么做。代码对不起,但是这个火车头,它……#include <iostream> #include <alg...

题解 CF1811C Restore the Array

0 条评论 OI 题解 无标签 hycqwq
思路观察上面这张图,发现除首尾外,$a$ 数组的每个元素会对 $b$ 数组中的两个元素产生影响。而要控制它所产生的影响,我们只需要将 $a_i$ 设为 $b$ 中在它两边的元素的最小值,即:$$ a_i = \begin{cases} b_i & i = 1 \\ b_{i - 1} & i = n \\ \min(b_i, b_{i - 1}) & \text{o...

题解 LGP8662 [蓝桥杯 2018 省 AB] 全球变暖

0 条评论 OI 题解 无标签 hycqwq
很有生活气息的题。思路首先想到,我们可以在开始时先统计一下总共有多少个岛,然后再统计水面上升之后有多少个岛,然后一减!但是我们发现,这样只有 $36\text{pts}$。于是我们找到了一个错误的数据:10 .......... .##....... .###...... ..##...##. .###..###. ..#...###. .###...#.. ..#...###. ........

题解 LGP8697 [蓝桥杯 2019 国 C] 最长子序列

0 条评论 OI 题解 无标签 hycqwq
思路题目要求 $t$ 是从头开始匹配,所以我们可以使用贪心的思想。在 $s$ 中找到匹配 $t$ 的字符,位置越靠前越好。于是这道题就做完了。代码#include <iostream> #include <string> using namespace std; int ans = 0; string s, t; int main() { cin >...

题解 LGP8682 [蓝桥杯 2019 省 B] 等差数列

0 条评论 OI 题解 无标签 hycqwq
思路项数最少等同于公差(记作 $d$)最大。而由于等差数列的任意两项之差都是公差的倍数(其正确性显然),所以我们只需要求出给出的数两两之差的最大公因数即可。不过 $O(N^2)$ 这个复杂度嘛……一言难尽!于是我们来思考优化的办法。经过不懈的努力,我们发现,其实只需要取相邻的数的最大公因数。为什么呢?因为当 $1 \le a, b, c$ 时,$\gcd(\gcd(a, b), c) = \...

题解 LGP9160 multiset

0 条评论 OI 题解 无标签 hycqwq
开始之前先说一句:我校大佬出的题我必须做!前置知识真子集:若集合 $B$ 是集合 $A$ 的子集且 $A \ne B$,则称 $B$ 为 $A$ 的真子集。思路前置定义令 $|X|$ 为集合 $X$ 的元素个数。设 $S = \{s_1, s_2, \cdots, s_n\}$ 且 $s_1 \le s_2 \le \cdots \le s_n$。设 $T = \{t_1, t_2, \cd...

题解 LGP8964 梦幻 | Reopening of Dream

0 条评论 OI 题解 无标签 hycqwq
思路题目已经说的很清楚了,这里我再补充一点。如果一位选手同时可能拥有多种身份,那么三种身份的优先级从大到小为:见祖宗人,乐子人,普通人。所以我将三种身份在程序中处理的编号分别设为:身份编号普通人$0$见祖宗人$2$乐子人$1$由于见祖宗人的判断是基于子串的,所以我们要先确保字符串长度大于 $10$(即 //freopen( 的长度)另外,见祖宗人注释的 freopen 语句不一定要是正确的。...