
ACM算法刷题
文章平均质量分 54
Violent-Ayang
人中龙凤尚且举步维艰
展开
-
2020GPLT真题题解
Linux 之父 Linus Torvalds 的名言是:“Talk is cheap. Show me the code.”(嫑废话,上代码)。本题就请你直接在屏幕上输出这句话。本题没有输入。在一行中输出 Talk is cheap. Show me the code.。无Talk is cheap. Show me the code.L1-2 猫是液体 (5分)测量一个人的体积是很难的,但猫就不一样了。因为猫是液体,所以可以很容易地通过测量一个长方体容器的容积来得到容器里猫的体积。本题就请你完成这原创 2024-06-03 10:17:27 · 1015 阅读 · 0 评论 -
考研复试机试刷题
讲解一些关于考研复试的机试题,后续还会继续更新原创 2024-06-03 09:59:33 · 953 阅读 · 0 评论 -
1350 造海船
明朝郑和下西洋,需要建造庞大的海船,需要足够的木料,因为那时候没有钢铁制造的船,现在有 n 根原木,现在想把这些木头切割成 k 段长度均为 l 的小段木头(木头有可能有剩余),用来制造船的部件。当然,工匠希望得到的小段木头越长越好,这样可以让船更大一些不浪费木料,请求出 l 的最大值。原木的长度都是正整数,我们要求切割得到的小段木头的长度也是正整数。例如有两根原木长度分别为 11 和 21,要求切割成等长的 6 段,很明显能切割出来的小段木头长度最长为 5。原创 2024-01-20 17:26:38 · 776 阅读 · 0 评论 -
二维数组行列差
一个二维数组 a 的大小为 n×n。定义 b i为数组 a 中第 i 行元素的总和,而 c j为第 j 列元素的总和。接着,定义 d i 为第 i 行和列和的差的绝对值,即 ∣b i −c i ∣。给定这个二维数组 a,逐行输出所有 d i 的值,其中 1≤i≤n,每个 d i 的值输出在一行上。原创 2024-01-18 11:06:11 · 595 阅读 · 0 评论 -
[NOIP2003 普及组] 乒乓球
国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中 1111 分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白 1111 分制和 2121 分制对选手的不同影响。在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些分析,所以需要你的帮忙。原创 2024-01-17 22:50:49 · 945 阅读 · 0 评论 -
携带研究材料(第六期模拟笔试)
小明是一位科学家,他需要参加一场重要的国际科学大会,以展示自己的最新研究成果。他需要带一些研究材料,但是他的行李箱空间有限。这些研究材料包括实验设备、文献资料和实验样本等等,它们各自占据不同的空间,并且具有不同的价值。 小明的行李空间为 N,问小明应该如何抉择,才能携带最大价值的研究材料,每种研究材料只能选择一次,并且只有选与不选两种选择,不能进行切割。原创 2024-01-17 13:04:01 · 566 阅读 · 0 评论 -
7593 蜘蛛、蜻蜓与蝉(2)
描述蜘蛛有 8 条腿,蜻蜒有 6 条腿和 2 对翅,蝉有 6 条腿和 1 对翅。三种虫子共 18 只,共有 118 条腿和 20 对翅。问每种虫子各几只?输入描述三个正整数 m,n,p,表示三种虫子共多少只 m,共有多少条腿 n,共有多少对翅 p。原创 2024-01-09 22:42:49 · 1060 阅读 · 0 评论 -
鸡兔同笼问题加强版
已知鸡和兔的总数量为 n,总腿数为 m。输入 n 和 m,依次输出鸡和兔的数目,如果无解,则输出 “No answer”(不要引号)。原创 2024-01-06 17:07:57 · 789 阅读 · 0 评论 -
[NOIP2002 普及组] 级数求和
显然对于任意一个整数k,当n足够大的时候,Sn>k。现给出一个整数k,要求计算出一个最小的n,使得Sn>k。原创 2023-12-31 21:51:06 · 953 阅读 · 0 评论 -
栈和队列基本操作题
新建一个栈,读取标准输入3个整数3 4 5,入栈3 4 5,依次出栈,打印 5 4 3,新建循环队列(Maxsize为5),读取标准输入3 4 5 6 7,入队7时,队满,打印false,然后依次出队,输出 3 4 5 6原创 2023-01-02 16:59:28 · 381 阅读 · 1 评论 -
P00587. 染色
机房的窗户是一个n行m列的方格阵,n,m未知小J准备对窗户进行染色他准备将最外圈的方格染成红色的,其余方格染成黑色的。现给出红色方格的个数r和黑色方格的个数b,也就是说你会知道一共有多少个格子。请给出一组可行的n,m的取值。原创 2022-12-27 10:44:41 · 410 阅读 · 0 评论 -
数组循环左移
本题要求实现一个对数组进行循环左移的简单函数:一个数组a中存有n(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向左移m(≥0)个位置,即将a中的数据由(最前面的m个数循环移至最后面的m个位置)。如果还需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?原创 2022-12-27 10:43:46 · 188 阅读 · 0 评论 -
两个有序序列的中位数
已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A0,A1,...,AN−1的中位数指A(N−1)/2的值,即第⌊(N+1)/2⌋个数(A0 为第1个数)。原创 2022-12-27 10:40:23 · 488 阅读 · 0 评论 -
两个有序链表序列的合并
已知两个非降序链表序列S1与S2,设计函数构造出S1与S2合并后的新的非降序链表S3。原创 2022-12-26 19:00:32 · 134 阅读 · 0 评论 -
寒假集训题目集二B - 海港
小 K 是一个海港的海关工作人员,每天都有许多船只到达海港,船上通常有很多来自不同国家的乘客。小 K 对这些到达海港的船只非常感兴趣,他按照时间记录下了到达海港的每一艘船只情况;对于第 ii 艘到达的船,他记录了这艘船到达的时间 t_it i (单位:秒),船上的乘客数 k_ik i ,以及每名乘客的国籍 x_{i,1}, x_{i,2},\dots,x_{i,k}x i,1 ,x i,2 ,…,x i,k 。小K统计了 nn 艘船的信息,希望你帮忙计算出以原创 2022-12-23 11:12:23 · 193 阅读 · 0 评论 -
寒假集训题目集二A - 产生冠军
有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。球赛的规则如下:如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。根据这个规则,无需循环较量,或许就能确定冠军。你的任务就是面对一群比赛选手,在经过了若干场撕杀之后,确定是否已经实际上产生了冠军。原创 2022-12-22 19:21:24 · 383 阅读 · 0 评论 -
陶陶摘苹果(升级版)
又是一年秋季时,陶陶家的苹果树结了n个果子。陶陶又跑去摘苹果,这次他有一个a公分的椅子。当他手够不着时,他会站到椅子上再试试。这次与 NOIp2005 普及组第一题不同的是:陶陶之前搬凳子,力气只剩下s了。当然,每次摘苹果时都要用一定的力气。陶陶想知道在s原创 2022-12-20 16:09:34 · 292 阅读 · 0 评论 -
最大子段和(动态规划详细解析)
给出一个长度为n的序列a,选出其中连续且非空的一段使得这段和最大。原创 2022-12-20 11:18:52 · 4912 阅读 · 0 评论 -
凌乱的yyy / 线段覆盖
快 noip 了,yyy 很紧张!现在各大 oj 上有 $n$ 个比赛,每个比赛的开始、结束的时间点是知道的。yyy 认为,参加越多的比赛,noip 就能考的越好(假的)。所以,他想知道他最多能参加几个比赛。由于 yyy 是蒟蒻,如果要参加一个比赛必须善始善终,而且不能同时参加 $2$ 个及以上的比赛。原创 2022-12-19 20:17:31 · 126 阅读 · 0 评论 -
九进制转十进制
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。转换成十进制等于多少?原创 2022-12-19 14:58:28 · 833 阅读 · 0 评论 -
环形链表问题(C语言)
暴力法+快慢指针法+哈希表法解决环形链表问题。暴力法仅需四行代码。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。原创 2022-02-24 20:13:27 · 214 阅读 · 0 评论 -
删除链表中的节点(C语言)
请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点head ,只能直接访问 要被删除的节点 。原创 2022-02-23 18:46:33 · 9432 阅读 · 0 评论 -
删除链表 M 个节点之后的 N 个节点(C语言)
给定链表 head 和两个整数 m 和 n. 遍历该链表并按照如下方式删除节点:- 开始时以头节点作为当前节点.- 保留以当前节点开始的前 m 个节点.- 删除接下来的 n 个节点. - 重复步骤 2 和 3, 直到到达链表结尾.在删除了指定结点之后, 返回修改过后的链表的头节点.原创 2022-02-27 22:47:21 · 954 阅读 · 0 评论 -
盛最多水的容器(C语言)
暴力法加双指针法解决盛水容器问题,给定一个长度为 n 的整数数组height。有n条垂线,第 i 条线的两个端点是(i, 0)和(i, height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。原创 2022-02-22 09:46:59 · 607 阅读 · 0 评论 -
合并两个有序链表(C语言)
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。原创 2022-02-24 16:09:07 · 2908 阅读 · 0 评论 -
存在重复元素(C语言)
给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。原创 2022-02-25 19:30:07 · 1420 阅读 · 0 评论 -
寻找两个正序数组的中位数(C语言)
给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。算法的时间复杂度应该为 O(log (m+n)) 。示例 1:输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2示例 2:输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5原创 2022-02-20 15:12:12 · 628 阅读 · 0 评论 -
统计各位数字之和为偶数的整数个数(C语言)
给你一个正整数 num ,请你统计并返回 小于或等于 num 且各位数字之和为 偶数 的正整数的数目。正整数的 各位数字之和 是其所有位上的对应数字相加的结果。示例 1:输入:num = 4输出:2解释:只有 2 和 4 满足小于等于 4 且各位数字之和为偶数。 示例 2:输入:num = 30输出:14解释:只有 14 个整数满足小于等于 30 且各位数字之和为偶数,分别是: 2、4、6、8、11、13、15、17、19、20、22、24、26 和 28 。 提示:原创 2022-02-20 15:04:58 · 1732 阅读 · 0 评论 -
删除排序链表中的重复元素(C语言)
给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。原创 2022-02-24 16:33:53 · 1977 阅读 · 0 评论 -
回文链表(C语言)
暴力法加双指针法解决回文联表。给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。原创 2022-02-24 15:16:02 · 697 阅读 · 0 评论 -
相交链表(C语言)
给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。原创 2022-02-28 13:30:30 · 312 阅读 · 0 评论 -
最大子数组和(C语言贪心算法)
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。原创 2022-02-25 21:34:59 · 1020 阅读 · 2 评论 -
反转链表(C语言)
用头插法实现反转链表原创 2022-02-23 19:28:59 · 785 阅读 · 0 评论 -
1012 数字分类 (20 分)
给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字:A1 = 能被 5 整除的数字中所有偶数的和;A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1−n2+n3−n4⋯;A3 = 被 5 除后余 2 的数字的个数;A4 = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位;A5 = 被 5 除后余 4 的数字中最大数字。输入格式:每个输入包含 1 个测试用例。每个测试用例先给出一个不超过 1000 的正整数 N,随后给出 N 个不超过 100原创 2022-01-14 19:06:12 · 106 阅读 · 0 评论 -
1022 D进制的A+B (20 分)
输入两个非负 10 进制整数 A 和 B (≤2^30−1),输出 A+B 的 D (1<D≤10)进制数。输入格式:输入在一行中依次给出 3 个整数 A、B 和 D。输出格式:输出 A+B 的 D 进制数。输入样例:123 456 8输出样例:1103题解:#include<stdio.h>int main(){ int a,b,num,d,i=0; scanf("%d %d %d",&a,&b,&d); num = a + b;原创 2022-01-19 20:25:14 · 410 阅读 · 0 评论 -
1009 说反话 (20 分)
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。输出格式:每个测试用例的输出占一行,输出倒序后的句子。输入样例:Hello World Here I Come输出样例:Come I Here World Hello题解:#include<stdio.原创 2022-01-14 19:03:43 · 113 阅读 · 0 评论 -
1015 德才论 (25 分)
宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入格式:输入第一行给出 3 个正整数,分别为:N(≤105),即考生总数;L(≥60),为录取最低分数线,即德分和才分均不低于 L 的考生才有资格被考虑录取;H(<100),为优先录取线——德分和才分均不低于此线的被定义为“才德全尽”,此类考生按德原创 2022-01-18 20:32:03 · 114 阅读 · 0 评论 -
1020 月饼 (25 分)
月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 15 万吨第 2 种月饼、以及 5 万吨第 3 种月饼,获得 72 + 45/2 = 94.5(亿元)。输入格式原创 2022-01-19 20:22:06 · 126 阅读 · 0 评论 -
(C语言最详细解析)1003 我要通过! (20 分)
1003 我要通过! (20 分)“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:1.字符串中必须仅有 P、 A、 T这三种字符,不可以包含其它字符;2.任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串;3.如果 aPbTc 是正确的,那么 aPbATca 也是正确的,其中 a、 b、原创 2021-10-21 21:21:48 · 6303 阅读 · 17 评论 -
1002 写出这个数 (20 分)
1002 写出这个数 (20 分)读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10100。输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789结尾无空行输出样例:yi san wu结尾无空行题解:#include<stdio.h&g原创 2022-01-13 10:45:59 · 97 阅读 · 0 评论