![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PAT
此账号已弃用
此账号已弃用。
展开
-
PAT BASIC LEVEL 1040. 有几个PAT(25)
1040. 有几个PAT(25) 字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T);第二个PAT是第3位(P),第4位(A),第6位(T)。 现给定字符串,问一共可以形成多少个PAT? 输入格式: 输入只有一行,包含一个字符串,长度不超过105,只包含P、A、T三种字母。 输出格式: 在一行中输出给原创 2017-02-04 10:13:10 · 225 阅读 · 0 评论 -
PAT BASIC LEVEL 1057. 数零壹(20)
1057. 数零壹(20) 给定一串长度不超过105的字符串,本题要求你将其中所有英文字母的序号(字母a-z对应序号1-26,不分大小写)相加,得到整数N,然后再分析一下N的二进制表示中有多少0、多少1。例如给定字符串“PAT (Basic)”,其字母序号之和为:16+1+20+2+1+19+9+3=71,而71的二进制是1000111,即有3个0、4个1。 输入格式: 输入原创 2017-02-14 19:10:05 · 267 阅读 · 0 评论 -
PAT BASIC LEVEL 1056. 组合数的和(15)
1056. 组合数的和(15) 给定N个非0的个位数字,用其中任意2个数字都可以组合成1个2位的数字。要求所有可能组合出来的2位数字的和。例如给定2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。 输入格式: 输入在一行中先给出N(1<N<10),随后是N个不同的非0个位数字。数字间以空格分隔。 输出格式: 输出所有可能组合出原创 2017-02-14 19:08:34 · 269 阅读 · 0 评论 -
PAT BASIC LEVEL 1055. 集体照 (25)
1055. 集体照 (25) 拍集体照时队形很重要,这里对给定的N个人K排的队形设计排队规则如下: 每排人数为N/K(向下取整),多出来的人全部站在最后一排; 后排所有人的个子都不比前排任何人矮; 每排中最高者站中间(中间位置为m/2+1,其中m为该排人数,除法向下取整); 每排其他人以中间人为轴,按身高非增序,先右后左交替入队站在中间人的两侧(例如5人身高为190、原创 2017-02-13 17:51:05 · 295 阅读 · 0 评论 -
PAT BASIC LEVEL 1054. 求平均值 (20)
1054. 求平均值 (20) 本题的基本要求非常简单:给定N个实数,计算它们的平均值。但复杂的是有些输入数据可能是非法的。一个“合法”的输入是[-1000,1000]区间内的实数,并且最多精确到小数点后2位。当你计算平均值的时候,不能把那些非法的数据算在内。 输入格式: 输入第一行给出正整数N(<=100)。随后一行给出N个实数,数字间以一个空格分隔。 输出格式:原创 2017-02-13 17:49:17 · 519 阅读 · 0 评论 -
PAT BASIC LEVEL 1053. 住房空置率 (20)
1053. 住房空置率 (20) 在不打扰居民的前提下,统计住房空置率的一种方法是根据每户用电量的连续变化规律进行判断。判断方法如下: 在观察期内,若存在超过一半的日子用电量低于某给定的阈值e,则该住房为“可能空置”; 若观察期超过某给定阈值D天,且满足上一个条件,则该住房为“空置”。 现给定某居民区的住户用电量数据,请你统计“可能空置”的比率和“空置”比率,原创 2017-02-13 17:44:07 · 245 阅读 · 0 评论 -
PAT BASIC LEVEL 1052. 卖个萌 (20)
1052. 卖个萌 (20) 萌萌哒表情符号通常由“手”、“眼”、“口”三个主要部分组成。简单起见,我们假设一个表情符号是按下列格式输出的: [左手] ([左眼][口][右眼])[右手] 现给出可选用的符号集合,请你按用户的要求输出表情。 输入格式: 输入首先在前三行顺序对应给出手、眼、口的可选符号集。每个符号括在一对方括号[]内。题目保证每个集合都至少有一个符号原创 2017-02-13 17:40:31 · 396 阅读 · 0 评论 -
PAT BASIC LEVEL 1051. 复数乘法 (15)
1051. 复数乘法 (15) 复数可以写成(A + Bi)的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i2 = -1;也可以写成极坐标下的指数形式(R*e(Pi)),其中R是复数模,P是辐角,i是虚数单位,其等价于三角形式 R(cos(P) + isin(P))。 现给定两个复数的R和P,要求输出两数乘积的常规形式。 输入格式: 输入在一行中依次给出两个复数原创 2017-02-13 17:37:32 · 408 阅读 · 0 评论 -
PAT BASIC LEVEL 1065. 单身狗(25)
1065. 单身狗(25) “单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。 输入格式: 输入第一行给出一个正整数N(<=50000),是已知夫妻/伴侣的对数;随后N行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔;之后给出一个正整数M(<=10000)原创 2017-02-15 11:05:12 · 551 阅读 · 0 评论 -
PAT BASIC LEVEL 1005. 继续(3n+1)猜想 (25)
1005. 继续(3n+1)猜想 (25) 卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已原创 2017-01-08 20:57:49 · 391 阅读 · 0 评论 -
PAT BASIC LEVEL 1050. 螺旋矩阵(25)
1050. 螺旋矩阵(25) 本题要求将给定的N个正整数按非递增的顺序,填入“螺旋矩阵”。所谓“螺旋矩阵”,是指从左上角第1个格子开始,按顺时针螺旋方向填充。要求矩阵的规模为m行n列,满足条件:m*n等于N;m>=n;且m-n取所有可能值中的最小值。 输入格式: 输入在第1行中给出一个正整数N,第2行给出N个待填充的正整数。所有数字不超过104,相邻数字以空格分隔。原创 2017-02-09 16:53:20 · 324 阅读 · 0 评论 -
PAT BASIC LEVEL 1049. 数列的片段和(20)
1049. 数列的片段和(20) 给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列{0.1, 0.2, 0.3, 0.4},我们有(0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 这10个片段。原创 2017-02-09 16:51:30 · 272 阅读 · 0 评论 -
PAT BASIC LEVEL 1048. 数字加密(20)
1048. 数字加密(20) 本题要求实现一种数字加密方法。首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余——这里用J代表10、Q代表11、K代表12;对偶数位,用B的数字减去A的数字,若结果为负数,则再加10。这里令个位为第1位。 输入格式: 输入在一行中依次给出A和B,均为不超过100位原创 2017-02-09 16:50:39 · 290 阅读 · 0 评论 -
PAT BASIC LEVEL 1046. 划拳(15)
1046. 划拳(15) 划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。 下面给出甲、乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒。 输入格式: 输入第一行先给出一个正整数N(<原创 2017-02-09 16:47:35 · 240 阅读 · 0 评论 -
PAT BASIC LEVEL 1058. 选择题(20)
1058. 选择题(20) 批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多。 输入格式: 输入在第一行给出两个正整数N(<=1000)和M(<=100),分别是学生人数和多选题的个数。随后M行,每行顺次给出一道题的满分值(不超过5的正整数)、选项个数(不少于2且不超过5的正整数)、正确选项个数(不超过选项个数的正整数)、所有正确选项原创 2017-02-14 19:11:48 · 410 阅读 · 0 评论 -
PAT BASIC LEVEL 1059. C语言竞赛(20)
1059. C语言竞赛(20) C语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛。既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽: 0. 冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……)。 1. 排名为素数的学生将赢得最好的奖品 —— 小黄人玩偶! 2. 其他人将得到巧克力。 给定比赛的最终排名以及一系列参赛者的ID,你要给出这些参赛者应该获得的奖品。原创 2017-02-14 19:14:40 · 330 阅读 · 0 评论 -
PAT BASIC LEVEL 1039. 到底买不买(20)
1039. 到底买不买(20) 小红想买些珠子做一串自己喜欢的珠串。卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖。于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有多少多余的珠子;如果不是,那么告诉她缺了多少珠子。 为方便起见,我们用[0-9]、[a-z]、[A-Z]范围内的字符来表示颜色。例如在图1中,第3串是小红想做的珠串;那么第1原创 2017-02-04 10:11:26 · 215 阅读 · 0 评论 -
PAT BASIC LEVEL 1038. 统计同成绩学生(20)
1038. 统计同成绩学生(20) 本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出。 输入格式: 输入在第1行给出不超过105的正整数N,即学生总人数。随后1行给出N名学生的百分制整数成绩,中间以空格分隔。最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔。 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生原创 2017-02-04 10:07:21 · 196 阅读 · 0 评论 -
PAT BASIC LEVEL 1037. 在霍格沃茨找零钱(20)
1037. 在霍格沃茨找零钱(20) 如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易。”现在,给定哈利应付的价钱P和他实付的钱A,你的任务是写一个程序来计算他应该被找的零钱。 输入格式: 输入在1行中分别给出P和A,格式为“Galleon原创 2017-02-04 10:06:14 · 349 阅读 · 0 评论 -
PAT BASIC LEVEL 1036. 跟奥巴马一起编程(15)
PAT BASIC LEVEL 1036. 跟奥巴马一起编程(15)# 1036. 跟奥巴马一起编程(15) 美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧! 输入格式: 输入在一行中给出正方形边长原创 2017-02-04 10:05:08 · 280 阅读 · 0 评论 -
PAT BASIC LEVEL 1035. 插入与归并(25)
1035. 插入与归并(25) 根据维基百科的定义: 插入排序 是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。 归并排序 进行如下迭代操作:首先将原始序列看成N个只包含1个元素的有序子序列,然后每次迭代归并两个相邻的有序子序列,直到最后只剩下1个有序的序列。 现给原创 2017-02-03 10:31:49 · 246 阅读 · 0 评论 -
PAT BASIC LEVEL 1034. 有理数四则运算(20)
1034. 有理数四则运算(20) 本题要求编写程序,计算2个有理数的和、差、积、商。 输入格式: 输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整型范围内的整数,负号只可能出现在分子前,分母不为0。 输出格式: 分别在4行中按照“有理数1 运算符 有理数2 = 结果”的格式顺序输出2个有理数的和、差、积、商。注意原创 2017-02-03 10:22:22 · 573 阅读 · 0 评论 -
PAT BASIC LEVEL 1033. 旧键盘打字(20)
1033. 旧键盘打字(20) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过105个字符的串。可用的字符包括字母[a-z, A-Z]、数字0-9、以及下划线“_”(代表原创 2017-02-03 10:16:39 · 300 阅读 · 0 评论 -
PAT BASIC LEVEL 1032. 挖掘机技术哪家强(20)
1032. 挖掘机技术哪家强(20) 为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。 输入格式: 输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。 输出格式: 在一原创 2017-02-03 10:12:57 · 521 阅读 · 0 评论 -
PAT BASIC LEVEL 1031. 查验身份证(15)
1031. 查验身份证(15) 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X原创 2017-02-03 10:11:15 · 457 阅读 · 0 评论 -
PAT BASIC LEVEL 1064. 朋友数(20)
1064. 朋友数(20) 如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”。例如123和51就是朋友数,因为1+2+3 = 5+1 = 6,而6就是它们的朋友证号。给定一些整数,要求你统计一下它们中有多少个不同的朋友证号。注意:我们默认一个整数自己是自己的朋友。 输入格式: 输入第一行给出正整数N。随后一行给出N个正整数,数字间以原创 2017-02-15 11:04:25 · 610 阅读 · 0 评论 -
PAT BASIC LEVEL 1063. 计算谱半径(20)
1063. 计算谱半径(20) 在数学中,矩阵的“谱半径”是指其特征值的模集合的上确界。换言之,对于给定的n个复数空间的特征值{a1+b1i, …, an+bni},它们的模为实部与虚部的平方和的开方,而“谱半径”就是最大模。 现在给定一些复数空间的特征值,请你计算并输出这些特征值的谱半径。 输入格式: 输入第一行给出正整数N(<= 10000)是输入的特征值的个数。随原创 2017-02-15 11:03:00 · 362 阅读 · 0 评论 -
PAT BASIC LEVEL 1062. 最简分数(20)
1062. 最简分数(20) 一个分数一般写成两个整数相除的形式:N/M,其中M不为0。最简分数是指分子和分母没有公约数的分数表示形式。 现给定两个不相等的正分数 N1/M1 和 N2/M2,要求你按从小到大的顺序列出它们之间分母为K的最简分数。 输入格式: 输入在一行中按N/M的格式给出两个正分数,随后是一个正整数分母K,其间以空格分隔。题目保证给出的所有整数都不超过原创 2017-02-15 11:02:24 · 284 阅读 · 0 评论 -
PAT BASIC LEVEL 1061. 判断题(15)
1061. 判断题(15) 判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。 输入格式: 输入在第一行给出两个不超过100的正整数N和M,分别是学生人数和判断题数量。第二行给出M个不超过5的正整数,是每道题的满分值。第三行给出每道题对应的正确答案,0代表“非”,1代表“是”。随后N行,每行给出一个学生的解答。数字间均以空格分隔。原创 2017-02-15 10:59:39 · 352 阅读 · 0 评论 -
PAT BASIC LEVEL 1060. 爱丁顿数(25)
1060. 爱丁顿数(25) 英国天文学家爱丁顿很喜欢骑车。据说他为了炫耀自己的骑车功力,还定义了一个“爱丁顿数”E,即满足有E天骑车超过E英里的最大整数E。据说爱丁顿自己的E等于87。 现给定某人N天的骑车距离,请你算出对应的爱丁顿数E(<=N)。 输入格式: 输入第一行给出一个正整数N(<=105),即连续骑车的天数;第二行给出N个非负整数,代表每天的骑车距离。原创 2017-02-14 19:18:26 · 333 阅读 · 0 评论 -
PAT BASIC LEVEL 1045. 快速排序(25)
1045. 快速排序(25) 著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边。 给定划分后的N个互不相同的正整数的排列,请问有多少个元素可能是划分前选取的主元? 例如给定N = 5, 排列是1、3、2、4、5。则: 1的左边没有元素,右边的元素都比它大,所以它可能是主元;原创 2017-02-07 21:10:15 · 282 阅读 · 0 评论 -
PAT BASIC LEVEL 1044. 火星数字(20)
1044. 火星数字(20) 火星人是以13进制计数的: 地球人的0被火星人称为tret。 地球人数字1到12的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。 火星人将进位以后的12个高位数字分别称为:tam, hel, maa, huh, tou, kes, hei, elo, syy原创 2017-02-07 21:07:11 · 317 阅读 · 0 评论 -
PAT BASIC LEVEL 1043. 输出PATest(20)
1043. 输出PATest(20) 给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按“PATestPATest….”这样的顺序输出,并忽略其它字符。当然,六种字符的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按PATest的顺序打印,直到所有字符都被输出。 输入格式: 输入在一行中给出一个长度不超过10000的、仅由英文字母构原创 2017-02-07 21:02:18 · 293 阅读 · 0 评论 -
PAT BASIC LEVEL 1017. A除以B (20)
1017. A除以B (20) 本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔。 输出格式: 在1行中依次输出Q和R,中间以1空格分隔。 输入样例: 123456789050987654321 7原创 2017-01-15 18:36:56 · 278 阅读 · 0 评论 -
PAT BASIC LEVEL 1016. 部分A+B (15)
1016. 部分A+B (15) 正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。 现给定A、DA、B、DB,请编写程序计算PA + PB。 输入格式: 输入在一行中依次给出A、DA、B、DB,中间以空格分隔,其中0 < A, B < 1010。原创 2017-01-15 15:56:58 · 269 阅读 · 0 评论 -
PAT BASIC LEVEL 1014. 福尔摩斯的约会 (20)
1014. 福尔摩斯的约会 (20) 大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是第4个字母’D’,代表星期四;第2对相同的字符是’E’,那是原创 2017-01-10 15:02:04 · 274 阅读 · 0 评论 -
PAT BASIC LEVEL 1013. 数素数 (20)
1013. 数素数 (20) 令Pi表示第i个素数。现任给两个正整数M <= N <= 104,请输出PM到PN的所有素数。 输入格式: 输入在一行中给出M和N,其间以空格分隔。 输出格式: 输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。 输入样例: 5 27 输出样例: 11 1原创 2017-01-10 11:40:56 · 237 阅读 · 0 评论 -
PAT BASIC LEVEL 1012. 数字分类 (20)
1012. 数字分类 (20) 给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字: A1 = 能被5整除的数字中所有偶数的和; A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4…; A3 = 被5除后余2的数字的个数; A4 = 被5除后余3的数字的平均数,精确到小数点后1位; A5 = 被5除后余4的数字中最大数字。原创 2017-01-10 11:38:22 · 220 阅读 · 0 评论 -
PAT BASIC LEVEL 1011. A+B和C (15)
1011. A+B和C (15) 给定区间[-231, 231]内的3个整数A、B和C,请判断A+B是否大于C。 输入格式: 输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。 输出格式: 对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case原创 2017-01-10 10:28:22 · 305 阅读 · 0 评论 -
PAT BASIC LEVEL 1009. 说反话 (20)
1009. 说反话 (20) 给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。 输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。 输出格式:每个测试用例的输出占一行,输出倒序后的句子。 输入样例:原创 2017-01-09 21:17:56 · 364 阅读 · 0 评论