
题解
文章平均质量分 56
ac_qyd
这个作者很懒,什么都没留下…
展开
-
CodeTON Round 1 B题 【Subtract Operation】【思维】
题目链接跳转链接题意给你一个包含 n 个整数的列表。您可以执行以下操作:从列表中选择一个元素 x,从列表中删除 x,然后从所有剩余元素中减去 x 的值。求是否能使列表中唯一剩余的元素等于 k。思路设数组原来为(这里按照删除顺序排序,最先删除的排最后): a1 a2 ... ana_1\;a_2\;...\;a_na1a2...an减去一个数后 : (a1−an) (a2−an) ... (an−1−an)(a_1 - a_n)\;(a_2 - a_n)\;..原创 2022-03-25 18:52:02 · 508 阅读 · 1 评论 -
CodeTON Round 1 C题 【Make Equal With Mod】【思维】
思维跳转题目题意给你一组数,然后你可以对数组中每一个数取模 x (x >= 2),问你是否可以使得所有数相等思路不存在 1 时,数组中的数按从大到小的顺序依次取模便可以得到 0存在 1 和 0 时,因为 1 无法取模变成 0 因此不可能使得所有数相等剩下的情况(即有 1 无 0),看是否存在 2 个数相差 1,不存在 2 个数相差 1 时,每个数可以从大到小依次取模本身 - 1 的数得到 1(在这里因为存在 1,故如果存在 2 时会与 1 相差 1 不满足上一个条件因此不用特判);存在原创 2022-03-25 18:14:31 · 614 阅读 · 0 评论 -
The Delivery Dilemma
链接题目链接题意数组 a、b 分别代表外卖送达所需要的时间、自己去拿需要的时间,送外卖是可以同时进行的,拿外卖只能一个一个拿,求拿到外卖的最短时间思路前缀和 + 二分首先将外卖按送来的时间升序排序,因为这样可以选择取走排在前面的外卖,因为此时取走前面的外卖,外卖送来的时间减少,因此可以二分得到结果,拿外卖的时间可以使用前缀和求得,具体细节见代码注释代码#include <bits/stdc++.h>#define pii pair<int, int>typedef原创 2021-12-05 23:59:31 · 418 阅读 · 0 评论 -
Pair of Topics
链接题目链接题意老师:数组 a学生:数组 b如果 ai + aj > bi + bj,则 i 和 j 主题是好的主题对,求好的主题对的数量思路将 a、b 数组相减,结果保留在 a 数组中,选取 2 个下标,这 2 个位置和大于 0 便是好的主题对,因此对 a 数组升序之后,枚举第一个主题,再二分答案即可(假如下标 1 和 k 对应的主题是好的主题对,则 1 和 [2, k] 对应的主题全是好的主题对)代码#include <bits/stdc++.h>#define p原创 2021-12-04 16:56:40 · 286 阅读 · 0 评论 -
Di-visible Confusion
链接题目链接题意给你一个长度为 n 的数组 a ,你可以选择下标 i,当 a[i] 不能被 i + 1 整除时可以删去 a[i],求是否可以删去整个序列思路如果一个数不能被 2, 3, … , i + 1 这些中的任何一个数删去的话那么它就永远无法被删去,因为删除它前面的数可以左移,而删除它后面的数对它的下标没有影响代码#include <iostream>#include <algorithm>#include <cstring>#include &原创 2021-11-14 23:45:47 · 309 阅读 · 0 评论 -
Dominant Character
链接题目链接题意给你一串长度为 n 的字符串,要求找到最小子串,最小子串要满足以下要求最小子串的长度至少为 2‘a’ 在这个子字符串中出现的次数比在 ‘b’ 中出现的次数要多‘a’ 在这个子字符串中出现的次数比在 ‘c’ 中出现的次数要多思路要满足最小子串的条件,首先容易想到 aa 满足条件,然后逐步扩大最小子串的长度,当长度为 3 时,得到 aba 或 aca (包含 aab、aac 的最小子串为 aa),当长度为 4 时,易得 abca 或 acba (注意到一定是原创 2021-11-14 23:36:46 · 690 阅读 · 0 评论 -
Banknotes
链接题目链接题意有 n 种货币,问你对于给定的整数 k,找出不能用 k 或更少的钞票表示的最小正数 s思路因为是求对于给定的整数 k,找出不能用 k 或更少的钞票表示的最小正数 s,所以要尽可能使用多的小面值货币,什么叫尽可能多呢?尽可能多就是指除了最大面值的货币外,其余货币与比他大一点的面值的货币之差,比如有 2 种面值 $1 和 $10,尽可能多的使用 $1 货币,这里的尽可能多就是最多使用 9 张 $1 面值的货币,因为使用 10 张得到的面值即为 10,但这个面值可以只用一张 $10 的货原创 2021-11-14 20:53:40 · 12814 阅读 · 1 评论 -
Blue-Red Permutation
题意给你 n 个数,这几个数有 2 中颜色,红色或者蓝色,你可以对蓝色的数减 1,也可以对红色的数加 1,问你是否可以将这 n 个数变成 1-n 的一个排列思路对蓝色的数来说,它只能减 1,因此越小的蓝色数可以变成的数越少,如蓝色的 3 只能变成 1、2、3,而蓝色的 5 可以变成 1、2、3、4、5,因此优先使用蓝色的比较小的数变成 1-n 中比较小的数,而红色的数的操作恰好相反代码#include <iostream>#include <algorithm>#inc原创 2021-11-14 20:09:05 · 435 阅读 · 0 评论 -
Array Elimination
Array Elimination题目链接题意给你 n 个数(数组 a),你可以对它们进行下面这种操作从数组中选择 k 个数,索引分别是 i1, i2, … ik计算出 x = a[i1] & a[i2] & a[i3] & … a[ik]a[i1], a[i2], … a[ik] 都减去 x求可以使得数组 a 全为 0 的所有 k思路只有一种操作,即选择 k 个数,减去他们的按位与,把这 k 个数看成二进制,即让他们每个数都为 1 的部分变为 0,因此可以统计原创 2021-11-14 19:23:16 · 140 阅读 · 1 评论 -
湖南大学第十六届程序设计竞赛
B Yuki with emofunc and playf(搜索)题意Yuki 有 1 个苹果,playf 可以把苹果变成原来的 10 倍,emofuc 可以把一个苹果变成 x 个(等同于苹果数目增加 x - 1),让你求使得苹果可以 n 等分并且麻烦 emofunc 和 playf 的最少次数,如果做不到输出 -1思路BFS 搜索,根据模运算规则(a + b) % p = (a % p + b % p) % p(a * b) % p = (a % p * b % p) % p对手中的苹果原创 2021-11-11 19:45:31 · 148 阅读 · 1 评论 -
Escalator(模拟队列)
题意有一群人要坐电梯,有的想上去,有的想下来,上去和下来都要花费 10 分钟时间,同一方向的人可以在电梯未停止时就上去,不同方向的人必须在电梯停止时才能上电梯,求最后一个人离开电梯的时间思路模拟 2 个队列,分别代表 2 个方向的人,同一方向的人到达电梯在电梯运行结束之前上去,否则电梯停止运行,比较 2 个队列最先到达的人,谁先到电梯就往那个方向运行代码#include <iostream>#include <algorithm>#include <queue&g原创 2021-11-11 17:05:08 · 283 阅读 · 1 评论 -
Codeforces Round #748 (Div. 3) A B C D1
链接A. Elections题目大意三个人的票数分别为a, b, c,求一个人票数离超过所有人还需要多少票思路分三种情况讨论:最高票就一个人,则他只需再得到0票,其他人需要【最高票数 - 自身票数 + 1】 票最高票有2个人,则这2个人都需要再得到1票(等同于【最高票数 - 自身票数 + 1】),剩下1个需要【最高票数 - 自身票数 + 1】 票3个人票数相同,每个人都需要再得到1票(等同于【最高票数 - 自身票数 + 1】)不难发现,只有在最高票只有一个人的情况下,得票最高的人需要0原创 2021-10-14 16:58:31 · 186 阅读 · 6 评论 -
“深圳计算科研院杯“E起来编程暨第三届湖北省赛预选赛B题
B题目大意有n个室内景点和m个室外景点,参观它们会带来不同的愉悦值,且再次参观同一景点愉悦值将会变为之前的60%,在下午参观室外景点愉悦值也会变成原来的80%(会与60%叠加),现在有t天,你可以选择在这t天中上午上班或者下午上班,但是上午上班的天数必须大于或等于k(那肯定选择等于)。思路使用2个优先队列分别存储室外景点和室内景点的愉悦值,若景点被参观了便先出队,再将它的愉悦值乘以0.6后再入队,选择户外景点和户内景点愉悦值大的先参观#include <bits/stdc++.h>u原创 2021-07-10 12:08:37 · 111 阅读 · 0 评论 -
HDU - 1426
问题描述自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视。据说,在2008北京奥运会上,会将数独列为一个单独的项目进行比赛,冠军将有可能获得的一份巨大的奖品———HDU免费七日游外加lcy亲笔签名以及同hdu acm team合影留念的机会。所以全球人民前仆后继,为了奖品日夜训练茶饭不思。当然也包括初学者linle,不过他太笨了又没有多少耐性,只能做做最最基本的数独题,不过他还是想得到那些奖品,你能帮帮他吗?你只要把答案告诉他就可以,不用教他是怎么做的。原创 2021-04-24 19:33:58 · 87 阅读 · 0 评论 -
hdu2067
hdu2067转载于https://www.cnblogs.com/chaosheng/archive/2012/01/26/2329576.html缘由今天写hdu2067的时候,没有思路,便搜了一下题解,结果大多数题解都看不懂(不会卡特兰数),最后在这篇题解上弄懂了这道题,于是想记录一下题目大意找到不穿越对角线到达(n,n)点的路径数思路——递推既然不能穿越对角线,那么可以将棋盘按对角线分成左右2个三角形,只需计算其中一个三角形的路径,然后将结果乘2即可我们选择左三角形研究,观察得知,转载 2021-02-27 11:46:56 · 173 阅读 · 0 评论 -
lightOJ-1008
lightOJ-1008题意:找规律,观察题目的图,找到表格里数字与纵横坐标的关系。思路:首先,观察到斜线上的数字(n,n)(n为任意值)的规律,设斜线上数字为k,易得k=n*(n-1)+1,设其他数字为m,若m为平方数,即m为n的平方,则可以观察到m与k之间存在着纵坐标相同(m为奇数)或横坐标相同(m为偶数)的关系,进而可以将问题简化为多个“┓”型的问题,根据m的开方确定m在哪个“┓”内,如下表格。其中7=3*(3-1)+1,位于(3,3),则在(4,9]内的m都在由7为中心的“┓”内,而除原创 2021-01-09 13:39:37 · 188 阅读 · 0 评论