![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法题题解
文章平均质量分 77
一些平时比赛,训练,日常学习中的题的题解
A好名字A
在努力学习
展开
-
河南萌新联赛2024第(二)场:南阳理工学院
这场比赛里面出到了很多的题,都是需要很多的时间去写,主要考察到了代码的实现能力,与codeforces里面的题有些差距。codeforces打多了还是有点不习惯的。题挺好的,尤其是H题感觉很考代码实现能力与STL的使用熟练度。多写写这样的题还是对我们很有好处的。只不过前三题都太水了,没有一点难度。原创 2024-07-25 11:44:32 · 651 阅读 · 2 评论 -
Codeforces Round 960 (Div. 2)
Codeforces Round 960 (Div. 2)补题原创 2024-07-21 14:11:43 · 736 阅读 · 0 评论 -
CCPC训练赛题解补题
对此,我们可以先判断一些条件,例如当w<b的时候一定输出-1,当a>w的时候一定输出0.000000000,这是两个特殊情况,比较容易判断。当c的长度,也就是轮子的高度为0的时候,如果我们能将车子弄起来,并且车子的另一端没有碰到河水那么我们就一定能正常行驶,这时轮子的最小值就是0.000000000。题意:这一题看着很难,还给出来几何图形,直接从气势上就吓到我们了,其实赛后补题的时候我们去写能发现其实也不是很难,考察到了对几何图形的掌握,有数学思维在里面。(原题链接点击这里)(原题链接点击这里)原创 2024-05-04 19:39:57 · 742 阅读 · 1 评论 -
河南萌新联赛2024第(一)场:河南农业大学
由数学知识我们可以知道当被除数越大,除数越小的时候值最大,所以我们尽可能让第一个数最大,但是由于t次移动的限制,我们可能做不到将第一个数变成最大的,因此我们用一个数组来存放每个数字移动到最左边的步数,再将数组排个序,在t允许的情况下,我们首先考虑最大的移动。所以当n为17时,结果是5;这一题说实话,没咋看懂,图的部分还没咋学,但是凭借我闯荡牛客那么久就知道这题不难,所以我直接就对半砍,然后再相乘。将数组先降序排序,看最大的是否为1,如果为1的话就进行2操作,否则进行1操作,最后再遍历一遍输出总和。原创 2024-07-17 20:13:04 · 975 阅读 · 0 评论 -
Clock and Strings
输入t1≤t≤5940行,每行4个整数abcd1≤abcd≤12,表示钟面上ab和cd两条线段的四个端点所对应的刻度,问这两条线段会不会在钟面上相交。如果会,则输出YES,不会则输出NO。原创 2024-05-20 16:24:58 · 900 阅读 · 0 评论 -
二分练习题(C. Earning on Bets)
二分的一道简单练习题,主要考察二分思想。原创 2024-06-21 19:10:34 · 871 阅读 · 0 评论 -
Codeforces Round 958 (Div. 2)补题
本题在赛时卡的时间比较久,把这题想复杂了,导致WA了两次。后来看明白之后就是将n每次转换成k-1个1,到最后分不出来k-1个1直接一次就能分完,即结果加一;区间里面,将区间里面的字符串变成一个字符,这个字符是0或1,到底是哪个,图片中有详细描述。题意:给一个数字n,写出一个序列,要求递增,并且两项之间或运算为n。题意就是给出一段字符串,字符串里面只包含0,1。思路:将字符串里面连续的0全部转化成一个0,再比较0,1个数。思路:利用二进制的特点,将0,1填入,最后逆序输出。原创 2024-07-16 11:27:19 · 575 阅读 · 0 评论 -
AcWing(4951. 整理账本)STL
4951. 整理账本 - AcWing题库账本中记录了一种产品的 n𝑛 条买卖记录。B p qS p q任何卖出记录的交易价格都高于任何买入记录的交易价格。也就是说,卖出记录和买入记录的交易价格相同的情况。现在,请你对账本进行整理,对所有交易价格相同的记录进行合并,使得每个交易价格只存在一条记录,新记录的交易数量等于所有参与合并的旧记录的交易数量之和。原创 2024-04-23 10:10:09 · 753 阅读 · 0 评论 -
2024CCPC全国邀请赛(郑州)暨第六届CCPC河南省赛补题
题意:输入两个数字,n,d。有一个幸运数字,1~9的数字至少出现一次,且数位为d的至少出现两次,n*k等于这个幸运数字,问k为多少。当时比赛的时候脑子抽,知道用二分,一直在那二分x的大小,一直不会写,搞了好久也没弄出来,不然感觉能再A一题。题意:求一个五位数是不是合数,如果是直接输出,如果不是随意排列求出一个合数,注意0不能当第一位。思路:直接输入五个字符,求0或者偶数,第一次交WA了一发,发现没有处理前导0,改了一次AC了。思路:用二分答案的板子,二分k,找到一个相同的k作为check的条件。原创 2024-05-17 16:13:24 · 1185 阅读 · 0 评论 -
E - Checksum
ICPC训练赛的一道题,感觉还不错,难度不是很大。感觉考到了一个小小的思维原创 2024-05-30 17:56:05 · 282 阅读 · 0 评论 -
博弈论题集
博弈论是算法比赛中比较常出的一类题型,觉得掌握的不好,平时也不会写,经常要花费很长时间也写不出来,所以整一个博弈论题集来收录一下那些博弈论的题。原创 2024-07-16 17:59:31 · 200 阅读 · 0 评论 -
Rudolf and 121(鲁道夫和 121)
利用贪心的思想,遍历`for (int i=1;i原创 2024-05-22 19:53:26 · 683 阅读 · 0 评论 -
ICPC训练赛补题集
ICPC训练赛中那些遇到的问题题解,看完后“柳暗花明又一村”原创 2024-05-28 16:22:24 · 1401 阅读 · 5 评论 -
AcWing STL练习(3466. 清点代码库)
STL的题要多多练习,里面的知识点繁琐,不练就会忘掉,STL可是好东西啊,可不能忘。原创 2024-04-23 17:04:57 · 934 阅读 · 0 评论 -
L. Palm Island
L. Palm IslandToph is playing a card game. She has n𝑛 cards and each card has a unique number of 1,2⋯n1,2⋯𝑛. In this game, Toph can operate the deck of the cards. We may wish to assume that the cards from the top to the bottom of the deck are p1,p2,⋯pn𝑝原创 2024-05-04 17:16:25 · 961 阅读 · 0 评论 -
信息工程大学第五届超越杯程序设计竞赛(同步赛)D题实验室有多少人
可以通过题目发现范围是很大的,暴力的话超时是必然的。比赛的时候我们想了很多种方法,二分啊,模拟啊等等方法,最后还是没有写出来,比赛完看了题解豁然开朗,醍醐灌顶,就是给他们排序一下,其中运用到了pair,vector,sort自定义排序的知识;接下来n行,每行两个正整数x,y,x表示从哪天开始就在实验室(包括x天),y表示从哪天开始离开实验室(y天一开始就离开实验室了)。时间表有n行,每行有两个数,分别表示从哪天开始就一直在实验室,以及从哪天开始离开实验室。输入4 输出 3。原创 2024-03-31 11:09:55 · 349 阅读 · 1 评论 -
对于STL的学习(洛谷P3613二维map)
每个寄包柜格子数量不一,第 i 个寄包柜有 𝑎𝑖(1≤𝑎𝑖≤1e5)个格子,不过我们并不知道各个 ai 的值。对于每个寄包柜,格子编号从 1 开始,一直到 𝑎𝑖ai。显然我们不能开数组暴力,要开一个 𝑎[1e5][1e5]的数组,肯定MLE。已知超市里共计不会超过 107个寄包格子,ai 是确定然而未知的,但是保证一定不小于该柜子存物品请求的格子编号的最大值。我们可以用STL里面的map,再优化一下,二维map正好可以存下每行每列map<pair<int,int>,int>;原创 2024-04-22 22:15:56 · 301 阅读 · 0 评论 -
高手去散步(洛谷P1294)
模拟一下试试,发现从1开始走有几条路,从2走有几条路.....诶,是不是可以用搜索啊,走到没路为止,反正题目都已经给出来了路径怎么走,我们把路径存到一个数组里面那不就轻而易举能解决了吗,典型的DFS方法深度搜索呗。高手的那个它,不喜欢太刺激的过程,因此那些没有路的观景点高手是不会选择去的。而高手想让他们在一起的路程最长(观景时它不会理高手),已知高手的穿梭机可以让他们在任意一个观景点出发,也在任意一个观景点结束。“即使是单相思,也是完整的爱情”,高手从未放弃对它的追求。一个整数,表示他们最长相伴的路程。原创 2024-04-21 20:27:29 · 416 阅读 · 1 评论 -
L2-050 懂蛇语(团体程序设计天梯赛)
在《一年一度喜剧大赛》第二季中有一部作品叫《警察和我之蛇我其谁》,其中“毒蛇帮”内部用了一种加密语言,称为“蛇语”。蛇语的规则是,在说一句话 A 时,首先提取 A 的每个字的首字母,然后把整句话替换为另一句话 B,B 中每个字的首字母与 A 中提取出的字母依次相同。例如二当家说“九点下班哈”,对应首字母缩写是JDXBH,他们解释为实际想说的是“京东新百货”……本题就请你写一个蛇语的自动翻译工具,将输入的蛇语转换为实际要表达的句子。原创 2024-04-21 19:50:53 · 706 阅读 · 1 评论 -
[蓝桥杯 2023 省 B] 冶炼金属
题目描述小蓝有一个神奇的炉子用于将普通金属 O 冶炼成为一种特殊金属 X。这个炉子有一个称作转换率的属性 V,V 是一个正整数,这意味着消耗 V 个普通金属 O 恰好可以冶炼出一个特殊金属 X,当普通金属 O 的数目不足 V 时,无法继续冶炼。现在给出了 N 条冶炼记录,每条记录中包含两个整数 A 和 B,这表示本次投入了 A 个普通金属 O,最终冶炼出了 B 个特殊金属 X。每条记录都是独立的,这意味着上一次没消耗完的普通金属 O 不会累加到下一次的冶炼当中。原创 2024-03-29 22:38:35 · 390 阅读 · 2 评论 -
P1216 [USACO1.5] [IOI1994]数字三角形 Number Triangles
咱们来看这个1,怎么走最近,肉眼很容易看出来7->8->1呗,so so easy ,那是不是从第二层最大的往下挑选一个再往下加,这不就是把整体问题转化成局部问题的典型DP问题嘛。我们看走到第四层的7怎么走。到7只有8或者1可以到,所以我们就要比较两者从开始第一层到自己权重谁的大,再决定用它们两个其中的谁来到达7,DP秒了秒了。啊啊啊,好麻烦怎么写,完了又不会了,那么多步怎么走,别急,让爱因斯坦.中国分坦来解释一下。在上面的样例中,从 7→3→8→7→57→3→8→7→5 的路径产生了最大权值。原创 2024-04-21 20:57:16 · 251 阅读 · 1 评论 -
DFS自然数拆分问题(洛谷P2404)
任何一个大于 $1$ 的自然数 $n$,总可以拆分成若干个小于 $n$ 的自然数之和。现在给你一个自然数 $n$,要求你求出 $n$ 的拆分成一些数字的和。每个拆分后的序列中的数字从小到大排序。然后你需要输出这些序列,其中字典序小的序列需要优先输出。找到题目所想表达的意思,自己思考一下,不难AC。如果要像类似输出路径的这类题目就可以用结构体来存储路径后续再用循环将其输出。输入:待拆分的自然数 n。数据保证,2≤n≤8。输出:若干数的加法式子。### 样例输出 #1。原创 2024-03-24 15:33:42 · 362 阅读 · 0 评论 -
信息工程大学第五届超越杯程序设计竞赛(同步赛)G完美数字
题目问有几个0 我们知道2*5=10,所以这题的求解是一定和2 5有关的。把2 5看成一个组合,有几个组合就有几个0 例如2 * 5 * 2有一个组合,所以有一个0。因此我们就要求出来一个数里面有几个2,几个5,将找0的任务转换成找2 5,现在有一个长度为n的数组,如果一个子区间的所有数字之积是完美数,那么我们就称该区间为完美区间。这个题是我们以前没有见过的类型的题,虽然说是用到了前缀和,但是如果只用前缀和那一定是过不了这一题的,所以我们在比赛的时候就直接忽略了暴力求解。看了学长们的题解才勉强搞懂。原创 2024-03-31 14:21:29 · 335 阅读 · 1 评论 -
浙江理工大学程序设计竞赛 F题(leetcode)
这个题也是耗费了我们很长的时间,我们想着用优化后的暴力写,但是一直过不了,我们就发现暴力是过不了的,我们还想到了dfs,但发现dfs根本实现不了,因为dfs有一个特性就是回溯到节点,不符合这个题意。赛后学长们都讲了自己的方法,但是我们能力有限,根本听不懂,赛后我找到了一篇题解,看完直呼太妙了。用到了c++里面的find函数,也是暴力,但是这个暴力比我们写的暴力快多了,我感觉也是我们想不到的,也是学长们没有想到的方法。这样写不是很快,用到了暴力,但是更快的写法我也是想不到的,把这种简单的方法看会就不错了。原创 2024-04-07 19:23:57 · 201 阅读 · 5 评论