![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PAT乙级
Mikoto_10032
这个作者很懒,什么都没留下…
展开
-
PAT 乙级 1013 数素数 (20分)
PAT 乙级 1013 数素数 (20分)令Pi表示第i个素数。现任给两个正整数M <= N <= 10^4,请输出PM到PN的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27输出样例:11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103#include <i原创 2021-01-11 20:42:06 · 74 阅读 · 0 评论 -
PAT 乙级 1012 数字分类 (20分) C语言版
给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4…;A3 = 被5除后余2的数字的个数;A4 = 被5除后余3的数字的平均数,精确到小数点后1位;A5 = 被5除后余4的数字中最大数字。输入格式每个输入包含1个测试用例。每个测试用例先给出一个不超过1000的正整数N,随后给出N个不超过1000的待分类的正整数。数字间以空格分隔。输出格式对给定的N个正整原创 2020-12-30 20:56:50 · 103 阅读 · 0 评论 -
PAT 乙级 1010 一元多项式求导 (25分) C语言版
设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为n*xn-1。)输入格式以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是0,但是表示为“0 0”。输入样例3 4 -5 2 6 1 -2 0输出样例12 3 -10 1 6 0分析:1.flag用来判断是否已经有过输出~2.当b!=0时,因为给出的是所原创 2020-12-29 10:57:27 · 168 阅读 · 0 评论 -
PAT 乙级 1009 说反话 (20分) C语言版
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。输出格式:每个测试用例的输出占一行,输出倒序后的句子。输入样例:Hello World Here I Come输出样例:Come I Here World Hello#include <stdio.h>#incl原创 2020-12-28 20:36:34 · 132 阅读 · 0 评论 -
PAT 乙级 1008 数组元素循环右移问题 (20分) C语言版
一个数组A中存有N(N>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(M>=0)个位置,即将A中的数据由(A0A1……AN-1)变换为(AN-M …… AN-1 A0 A1……AN-M-1)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输入格式:每个输入包含一个测试用例,第1行输入N ( 1<=N<=100)、M(M>=0);第2行输入N个整数,之间用空格分隔。输出格式:在一行中输出循环右移M位以后的原创 2020-12-28 17:38:08 · 106 阅读 · 1 评论 -
PAT 乙级 1007. 素数对猜想 (20)
PAT 乙级 1007. 素数对猜想 (20)让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N (< 105),请计算不超过N的满足猜想的素数对的个数。输入格式:每个测试输入包含1个测试用例,给出正整数N。输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。输入样例:20输出样例:4#include <st原创 2020-12-28 15:30:17 · 81 阅读 · 0 评论 -
PAT 乙级 1005. 继续(3n+1)猜想 (25)
PAT 乙级 1005. 继续(3n+1)猜想 (25)卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已经在验证3的时候遇到过了,我们称5、8、4、2是被3“覆盖”的数。我们称一个数列中的某个数n为“关键数”,如果原创 2020-12-28 14:41:18 · 75 阅读 · 0 评论 -
PAT 乙级 1004. 成绩排名 (20)
PAT 乙级 1004. 成绩排名 (20)读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。输入格式每个测试输入包含1个测试用例,格式为第1行:正整数n第2行:第1个学生的姓名 学号 成绩第3行:第2个学生的姓名 学号 成绩… … …第n+1行:第n个学生的姓名 学号 成绩其中姓名和学号均为不超过10个字符的字符串,成绩为0到100之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。输出格式对每个测试用例输出2行,第1行是成绩最高学生的姓名和原创 2020-12-24 16:06:11 · 70 阅读 · 1 评论 -
PAT 乙级 1071 小赌怡情 (15分)
PAT 乙级 1071 小赌怡情 (15分)常言道“小赌怡情”。这是一个很简单的小游戏:首先由计算机给出第一个整数;然后玩家下注赌第二个整数将会比第一个数大还是小;玩家下注 t 个筹码后,计算机给出第二个数。若玩家猜对了,则系统奖励玩家 t 个筹码;否则扣除玩家 t 个筹码。注意:玩家下注的筹码数不能超过自己帐户上拥有的筹码数。当玩家输光了全部筹码后,游戏就结束。输入格式:输入在第一行给出 2 个正整数 T 和 K(≤ 100),分别是系统在初始状态下赠送给玩家的筹码数、以及需要处理的游戏次数。随后原创 2020-12-14 20:56:35 · 47 阅读 · 0 评论 -
PAT 乙级 1081 检查密码 (15分)
PAT 乙级 1081 检查密码 (15分)本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母、数字和小数点".",还必须既有字母也有数字。输入格式:输入第一行给出一个正整数 N(<=100),随后 N 行,每行给出一个用户设置的密码,为不超过80个字符的非空字符串,以回车结束。输出格式:对每个用户的密码,在一行中输出系统反馈信息,分以下5种:如果密码合法,输出“Your password is wan me原创 2020-12-14 19:43:13 · 91 阅读 · 0 评论 -
PAT 乙级 1086 就不告诉你 (15分)
PAT 乙级 1086 就不告诉你 (15分)注意点:若两数之积为200、20之类的数,输出应该为2,而不是02;#include <stdio.h>int main(){ int a,b,sum; scanf("%d %d",&a,&b); sum = a*b; while(sum % 10 == 0) sum/=10; while(sum) { printf("%d",sum%10)原创 2020-12-14 16:49:10 · 109 阅读 · 1 评论 -
PAT乙级 1056 组合数的和 (15分)
PAT乙级 1056 组合数的和 (15分)给定N个非0的个位数字,用其中任意2个数字都可以组合成1个2位的数字。要求所有可能组合出来的2位数字的和。例如给定2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。输入格式:输入在一行中先给出N(1<N<10),随后是N个不同的非0个位数字。数字间以空格分隔。输出格式:输出所有可能组合出来的2位数字的和。输入样例:3 2 8 5输出样例:330解题思路:2、5、8三个数字组成的6个两位数中,2在十位和个转载 2020-12-14 16:32:03 · 307 阅读 · 1 评论 -
PAT乙级 1051 复数乘法 (15分)
PAT乙级 1051 复数乘法 (15分)复数可以写成(A + Bi)的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i2 = -1;也可以写成极坐标下的指数形式(R*e(Pi)),其中R是复数模,P是辐角,i是虚数单位,其等价于三角形式(R(cos§ + isin§)。现给定两个复数的R和P,要求输出两数乘积的常规形式。输入格式输入在一行中依次给出两个复数的R1, P1, R2, P2,数字间以空格分隔。输出格式在一行中按照“A+Bi”的格式输出两数乘积的常规形式,实部和虚部均保留2位小转载 2020-12-14 15:33:46 · 95 阅读 · 0 评论 -
PAT乙级1046 划拳 (15分)
PAT乙级1046 划拳 (15分)划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。下面给出甲、乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒。#include <stdio.h>int main(){ int num,jia_num,yi_num,jia_fist,yi_fist,wi原创 2020-12-08 19:03:57 · 63 阅读 · 0 评论 -
PAT乙级1041 考试座位号 (15分)
PAT乙级1041 考试座位号 (15分)每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。输入格式:输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号。其中准考证号由 16 位原创 2020-12-08 10:53:08 · 107 阅读 · 0 评论 -
PAT乙级1002 写出这个数 (20分)
PAT乙级1002 写出这个数 (20分)读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10100 。输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。#include <stdio.h>#include <string.h>#include <stdlib.h>int原创 2020-12-08 10:35:31 · 43 阅读 · 0 评论 -
PAT乙级1036 跟奥巴马一起编程 (15分)
PAT乙级1036 跟奥巴马一起编程 (15分)#include <stdio.h>int main(){ int num; char a; scanf("%d %c",&num,&a); for(int i=0; i<(num+1)/2; i++) { for(int j=0; j<num; j++) { if(0 != i && (num+1)/原创 2020-12-08 10:00:27 · 82 阅读 · 0 评论 -
PAT乙级1001 害死人不偿命的(3n+1)猜想 (15分)
PAT乙级1001 害死人不偿命的(3n+1)猜想#include<stdio.h>int main(int argc,char *argv[]){ int num,count=0; scanf("%d",&num); while(num>1) { if(num % 2 == 0) { num /= 2; } else num =(原创 2020-12-05 11:37:58 · 68 阅读 · 0 评论