PAT乙级
浙大的计算机程序设计能力考试,分享个人代码及思路。
一只小杰鸽
路漫漫其修远兮,吾将上下而求索。
展开
-
【个人代码及思路】PAT乙级:1013 数素数 (20分)
PAT (Basic Level) Practice1013 数素数 (20分)令 P**i 表示第 i 个素数。现任给两个正整数 M≤N≤104,请输出 P**M 到 P**N 的所有素数。输入格式:输入在一行中给出 M 和 N,其间以空格分隔。输出格式:输出从 P**M 到 P**N 的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27输出样例:11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71原创 2020-09-05 22:17:32 · 115 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1019 数字黑洞 (20分)
PAT (Basic Level) Practice1019 数字黑洞 (20分)给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的 6174,这个神奇的数字也叫 Kaprekar 常数。例如,我们从6767开始,将得到7766 - 6677 = 10899810 - 0189 = 96219621 - 1269 = 83528532 -原创 2020-09-04 21:23:19 · 120 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1045 快速排序 (25分)
PAT (Basic Level) Practice1045 快速排序 (25分)著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边。 给定划分后的 N 个互不相同的正整数的排列,请问有多少个元素可能是划分前选取的主元?例如给定 N=5N = 5N=5, 排列是1、3、2、4、5。则:1 的左边没有元素,右边的元素都比它大,所以它可能是主元;尽管 3 的左边元素都比它小,但其右边的 2 比它小,所以原创 2020-08-27 17:53:26 · 104 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1040 有几个PAT (25分)
PAT (Basic Level) Practice1040 有几个PAT (25分)字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位(P),第 4 位(A),第 6 位(T)。现给定字符串,问一共可以形成多少个 PAT?输入格式:输入只有一行,包含一个字符串,长度不超过105,只包含 P、A、T 三种字母。输出格式:在一行中输出给定字符串中包含多少个 PAT。由于结果可能比较大,只输出对原创 2020-08-27 00:49:44 · 126 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1023 组个最小数 (20分)
PAT (Basic Level) Practice1023 组个最小数 (20分)给定数字 0-9 各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意 0 不能做首位)。例如:给定两个 0,两个 1,三个 5,一个 8,我们得到的最小的数就是 10015558。现给定数字,请编写程序输出能够组成的最小的数。输入格式:输入在一行中给出 10 个非负整数,顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。整数间用一个空格分隔。10 个数字的总个数不超原创 2020-08-22 21:29:04 · 131 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1020 月饼 (25分)
PAT (Basic Level) Practice1020 月饼 (25分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 15 万吨第 2 种月饼、以及原创 2020-08-22 00:29:06 · 152 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1009 说反话 (20分)
PAT (Basic Level) Practice1009 说反话 (20分)给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。输出格式:每个测试用例的输出占一行,输出倒序后的句子。输入样例:Hello World Here I Come输出样例:Come原创 2020-05-18 22:42:08 · 144 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1022 D进制的A+B (20分)
PAT (Basic Level) Practice1022 D进制的A+B (20分)输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。输入格式:输入在一行中依次给出 3 个整数 A、B 和 D。输出格式:输出 A+B 的 D 进制数。输入样例:123 456 8输出样例:1103个人代码#include<cstdio>int main() { int A, B, D, sum; sc原创 2020-05-18 08:07:15 · 168 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1036 跟奥巴马一起编程 (15分)
PAT (Basic Level) Practice1036 跟奥巴马一起编程 (15分)美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!输入格式:输入在一行中给出正方形边长 N(3≤N≤20)和组成正方形边的某种字符 C,间隔一个空格。输出格式:输出由给定字符 C 画出的正方形。但是注意到行间距比列间距大,所以为了原创 2020-05-17 21:39:46 · 214 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1032 挖掘机技术哪家强 (20分)
PAT (Basic Level) Practice1032 挖掘机技术哪家强 (20分)为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第 1 行给出不超过 105 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从 1 开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。输出格式:在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一原创 2020-05-17 13:15:06 · 114 阅读 · 0 评论 -
【个人代码及思路】PAT乙级:1001 害死人不偿命的(3n+1)猜想 (15分)
1001 害死人不偿命的(3n+1)猜想 (15分)卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……我们今天的题目不是证明卡拉兹猜想原创 2020-05-16 22:03:30 · 164 阅读 · 0 评论