PTA题解
pintia中的一些题目
长生的梦呓
你们好,我叫长生,很高兴认识你们。闻道有先后,术业有专攻。欢迎来和我一起交流讨论。个人博客搜索关键字:长生的梦呓slensoft
展开
-
【PAT】题解集(乙级)
题解集 - PAT (Basic Level) Practice (中文) - 乙级一、题集题目题解传送门1001 害死人不偿命的(3n+1)猜想 (15分)传送门1002 写出这个数 (20分)传送门1003 我要通过! (20分)传送门1004 成绩排名 (20分)传送门1005 继续(3n+1)猜想 (25分)传送门1006 ...原创 2019-12-19 19:55:32 · 1615 阅读 · 7 评论 -
1010 一元多项式求导 (25分)(Java 题解)
1010 一元多项式求导 (25分)原题链接:传送门一、题目二、解析思路题目读懂:输入案例中3 4 = 对应的输出为12 3。12是3*4的结果,3是4-1。注意空格,注意“零多项式”的指数和系数都是 0,但是表示为 0 0。ac代码你可以用字符串保存,最后再把首位空格去掉。import java.util.Scanner;/** * 1010 一元多项式求导 (25分...原创 2020-03-03 21:34:09 · 893 阅读 · 2 评论 -
1015 德才论 (25分)(Java 题解)
1015 德才论 (25分)原题链接:传送门一、题目二、解析思路题目读懂,新建一个学生类用于存放值,顺便写3个方法。然后排序一下,最主要难在排序。这题Java过不了,只能通过三个测试案例。代码import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;...原创 2020-03-03 20:44:58 · 1012 阅读 · 4 评论 -
1027 打印沙漏 (20分)(Java 题解)
1027 打印沙漏 (20分)原题链接:传送门一、题目:二、解析:思路一道数学题,需要用等差数列算一下需要多少符号。相关解释已经在代码中注释。规律如下:第一个图形所需个数为,1 化简(1)*2-1。第二个图形所需个数为:1+3*2 化简(1+3)*2-1。第三个图形所需个数为:1+3*2+5*2 化简(1+3+5)*2-1。第四个图形所需...原创 2020-02-04 01:16:36 · 1195 阅读 · 1 评论 -
1082 射击比赛 (20分)(Java 题解)
1082 射击比赛 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.StringTokenizer;...原创 2020-01-24 15:56:01 · 1230 阅读 · 3 评论 -
1087 有多少不同的值 (20分)(Java 题解)
1087 有多少不同的值 (20分)原题链接:传送门一、题目:输入样例 1:2017输出样例 1:1480二、解析:思路: 将所有数不同值存到数组,然后将数组中的不同值输出。AC代码:/** * 1087 有多少不同的值 (20分) * * @思路:将所有数不同值存到数组,然后将数组中的不同值输出。 * @author: ChangSheng * ...原创 2019-12-31 22:52:40 · 403 阅读 · 0 评论 -
1086 就不告诉你 (15分) ( 超简单方式)(Java 题解)
1086 就不告诉你 (15分)原题链接:传送门一、题目:输入样例 1:5 7输出样例 1:53二、解析:思路: 算出数字成绩,然后倒叙一下。转成字符串用正则表达式替换去掉前面的0。AC代码:import java.util.Scanner;/** * 1086 就不告诉你 (15分) * * @思路:算出数字成绩,然后倒叙一下。顺便转成字符串用正则...原创 2019-12-31 22:11:31 · 572 阅读 · 0 评论 -
1081 检查密码 (15分) ( 正则最简方法)(Java 题解)
1081 检查密码 (15分)原题链接:传送门一、题目:输入样例 1:5123szheshi.wodepw1234.5678WanMei23333pass*word.6输出样例 1:Your password is tai duan le.Your password needs shu zi.Your password needs zi mu.Your passw...原创 2019-12-31 22:14:22 · 505 阅读 · 8 评论 -
1076 Wifi密码 (15分)(Java 题解)
1076 Wifi密码 (15分)原题链接:传送门一、题目:输入样例 1:8A-T B-F C-F D-FC-T B-F A-F D-FA-F D-F C-F B-TB-T A-F C-F D-FB-F D-T A-F C-FA-T C-F B-F D-FD-T B-F C-F A-FC-T A-F B-F D-F输出样例 1:13224143二、解析:...原创 2019-12-31 22:04:15 · 654 阅读 · 2 评论 -
1072 开学寄语 (20分)(Java 题解)
1072 开学寄语 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;/** * 1072 开学寄语 (20分) * * @author: ChangSheng * @date:...原创 2020-01-24 15:54:55 · 757 阅读 · 0 评论 -
1070 结绳 (25分)(Java 题解)
1070 结绳 (25分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.StreamTokenizer;import java.util.Arrays;/** *...原创 2020-01-24 15:53:51 · 529 阅读 · 0 评论 -
1064 朋友数 (20分)(Java 题解)
1064 朋友数 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.util.Scanner;/** * 1064 朋友数 (20分) * * @author: ChangSheng * @date: 2020年1月3日 下午5:56:22 */public class Main { public static void mai...原创 2020-01-24 15:52:57 · 550 阅读 · 0 评论 -
1063 计算谱半径 (20分)(Java 题解)
1063 计算谱半径 (20分)原题链接:传送门一、题目:输入样例 1:50 12 0-1 03 30 -3输出样例 1:4.24二、解析:思路1: 简单的数学题。看懂这一句就行:它们的模为实部与虚部的平方和的开方,而“谱半径”就是最大模。 注意:使用包装流BufferedReader会超时,多提交几次就行。或者你换成StreamTokenizer就不...原创 2019-12-31 22:00:36 · 447 阅读 · 0 评论 -
1061 判断题 (15分)(Java 题解)
1061 判断题 (15分)原题链接:传送门一、题目:判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。输入格式:输入在第一行给出两个不超过 100 的正整数 N 和 M,分别是学生人数和判断题数量。第二行给出 M 个不超过 5 的正整数,是每道题的满分值。第三行给出每道题对应的正确答案,0 代表“非”,1 代表“是”。随后 N 行,每行给出一个学生的解...原创 2019-12-05 23:22:11 · 547 阅读 · 0 评论 -
1057 数零壹 (20分)(Java 题解)
1057 数零壹 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Scanner;/** * 1057 数零壹 (20分) * * @author...原创 2020-01-24 15:51:44 · 362 阅读 · 3 评论 -
1056 组合数的和 (15分) (最简方式 - 推导公式)(Java 题解)
1056 组合数的和 (15分)原题链接:传送门一、题目:输入样例 1:3 2 8 5输出样例 1:330二、解析:思路1: 将输入的数字全部遍历一遍,组合求和AC代码1(简单):import java.util.Scanner;/** * 1056 组合数的和 (15分) * * @思路:将输入的数字全部遍历一遍,组合求和 * @author: ...原创 2019-12-31 21:55:22 · 514 阅读 · 0 评论 -
1053 住房空置率 (20分)(Java 题解)
1053 住房空置率 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.StreamTokenizer;/** * 1053 住房空置率 (20分) * ...原创 2020-01-24 15:50:35 · 1022 阅读 · 0 评论 -
1047 编程团体赛 (20分)(Java 题解)
1047 编程团体赛 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) ...原创 2020-01-24 15:49:02 · 663 阅读 · 0 评论 -
1046 划拳 (15分)(Java 题解)
1046 划拳 (15分)原题链接:传送门一、题目:输入样例 1:58 10 9 125 10 5 103 8 5 1212 18 1 134 16 12 15输出样例 1:1 2二、解析:思路1:巧妙开大数组减少代码行数 输入总次数N后,每输入一行计算一次,两人赢的次数累加。最后输出。AC代码1(简单):import java.util.Scanne...原创 2019-12-31 21:25:57 · 392 阅读 · 1 评论 -
1044 火星数字 (20分)(Java 题解)
1044 火星数字 (20分)原题链接:传送门一、题目:输入格式:输入第一行给出一个正整数 N(<100),随后 N 行,每行给出一个 [0, 169) 区间内的数字 —— 或者是地球文,或者是火星文。输出格式:对应输入的每一行,在一行中输出翻译后的另一种语言的数字。输入样例 1:4295elo novtam输出样例 1:hel marmay11513...原创 2019-12-05 23:14:10 · 595 阅读 · 0 评论 -
1042 字符统计 (20分)(Java 题解)
1042 字符统计 (20分)原题链接:传送门一、题目:二、解析:AC代码:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;/** * * @author: ChangSheng * @date: 2020年1月3日 下午4:42:...原创 2020-01-24 15:47:30 · 597 阅读 · 0 评论 -
1043 输出PATest (20分) (Java 题解)
1043 输出PATest (20分)原题链接:传送门一、题目:输入样例 1:redlesPayBestPATTopTeePHPereatitAPPT输出样例 1:PATestPATestPTetPTePePee二、解析:思路1:(巧妙开大数组,减少代码行数) 巧妙地开大一点数组,然后将出现过字符数量+1。然后再将字符PATest打印出来。AC代码1(简单):i...原创 2019-12-31 21:07:34 · 364 阅读 · 0 评论 -
1041 考试座位号 (15分) (Java 题解)
1041 考试座位号 (15分)原题链接:传送门一、题目:输入样例 1:43310120150912233 2 43310120150912119 4 13310120150912126 1 33310120150912002 3 223 4输出样例 1:3310120150912002 23310120150912119 1二、解析:思路: 将所有学...原创 2019-12-31 18:29:52 · 820 阅读 · 0 评论 -
1040 有几个PAT (25分)(Java 题解)
1040 有几个PAT (25分)原题链接:传送门一、题目:字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位§,第 4 位(A),第 6 位(T)。现给定字符串,问一共可以形成多少个 PAT?输入格式:输入只有一行,包含一个字符串,长度不超过10^5 ,只包含 P、A、T 三种字母。...原创 2019-12-12 22:22:58 · 422 阅读 · 0 评论 -
1039 到底买不买 (20分) (Java 题解)
1039 到底买不买 (20分)原题链接:传送门一、题目:输入样例 1:ppRYYGrrYBR2258YrR8RrY输出样例 1:Yes 8输入样例 2:ppRYYGrrYB225YrR8RrY输出样例 2:No 2二、解析:思路: 循环判断出A和B字符串中所有出现字符的次数,用数组存放出现过的字符的次数。再判断是否小摊是否足够。AC代码(简单):...原创 2019-12-31 18:16:29 · 531 阅读 · 0 评论 -
1037 在霍格沃茨找零钱 (20分)(Java 题解)
1037 在霍格沃茨找零钱 (20分)原题链接:传送门一、题目:输入样例 1:10.16.27 14.1.28输出样例 1:3.2.1输入样例 2:14.1.28 10.16.27输出样例 2:-3.2.1二、解析:思路: 把所有金额换算最小的Knut相减,然后再换算出来打印。AC代码:import java.util.Scanner;/** ...原创 2019-12-31 17:41:35 · 628 阅读 · 8 评论 -
1036 跟奥巴马一起编程 (15分)(Java 题解)
1036 跟奥巴马一起编程 (15分)原题链接:传送门一、题目:输入样例 1:10 a输出样例 1:aaaaaaaaaaa aa aa aaaaaaaaaaa二、解析:思路: 第一行和最后一行需要打印N个C,其他的只要首尾有C即可。两个for循环判断打印即可AC代码:import java.util.Scanne...原创 2019-12-31 17:29:02 · 530 阅读 · 1 评论 -
1031 查验身份证 (15分)(Java 题解)
1031 查验身份证 (15分)原题链接:传送门一、题目:输入样例 1:432012419880824005612010X19890101123411010819671130186637070419881216001X输出样例 1:12010X19890101123411010819671130186637070419881216001X输入样例 2:2320...原创 2019-12-31 17:11:02 · 562 阅读 · 0 评论 -
1029 旧键盘 (20分)(最简解法)(Java 题解)
1029 旧键盘 (20分)原题链接:传送门一、题目:输入样例 1:7_This_is_a_test_hs_s_a_es输出样例 1:7TI二、解析:思路: 先遍历A字符串,从A字符串中一个一个字符遍历下来,如果A中第i字符不等于B的第index个字符,那么说明B字符串缺少这个字符。则转换成大写凭拼接。然后再将拼接好字符串去重。注意:这个算法并不是最优。AC代...原创 2020-01-06 23:37:38 · 611 阅读 · 3 评论 -
1024 科学计数法 (20 分) ( java用BigDecimal一行解决超简单解法)(Java 题解)
1024 科学计数法 (20 分)原题链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805297229447168题目:科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+ -][1-9].[0-9]+E[+ -][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 ...原创 2019-11-26 17:58:47 · 779 阅读 · 0 评论 -
1023 组个最小数 (20分)(Java 题解)
1023 组个最小数 (20分)原题链接:传送门一、题目:输入样例 1:2 2 0 0 0 3 0 0 1 0输出样例 1:10015558二、解析:思路: 输入10个数。从1开始循环找出比0大的最小的数,最后循环所有数字。AC代码:import java.util.Scanner;/** * 1023 组个最小数 (20分) * * @思路:输入1...原创 2020-01-06 23:10:43 · 781 阅读 · 3 评论 -
1022 D进制的A+B (20分)(最简方式,一个方法解决)(Java 题解)
1022 D进制的A+B (20分)原题链接:传送门一、题目:二、解析:思路:数据A和B范围都比较小,直接使用Integer类的进制转换方法即可。想学习包装类的常用方法,请点这里:【Java 常用类】java.lang包(3)Byte、Short、Integer、Long 、Float、Double类的常用方法(包装类)AC代码:import java.util.Scanne...原创 2020-01-26 20:34:25 · 613 阅读 · 0 评论 -
1021 个位数统计 (15分)(Java 题解)
1021 个位数统计 (15分) 原题链接:传送门一、题目:输入格式:每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。输出格式:对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。输入样例 1:100311输出样例 1:0:21:33:1二、解析:思路:循环遍...原创 2019-12-05 22:59:41 · 765 阅读 · 0 评论 -
1018 锤子剪刀布 (20分)(Java 题解)
1018 锤子剪刀布 (20分)原题链接:传送门一、题目:输入样例 1:10C JJ BC BB BB CC CC BJ BB CJ J输出样例 1:5 3 22 3 5B B二、解析:思路: 先得出A赢的总次数和B赢的总次数,再得出AB所有手势中赢的最大值次数。按JCB顺序遍历一下找出最大(因为如果次数相同需要打印字母序小的,所以才需要按照...原创 2019-12-31 16:52:41 · 1096 阅读 · 0 评论 -
1017 A除以B (20分) (Java用大整型BigInteger超简单解法)(Java 题解)
1017 A除以B (20分)原题链接:传送门一、题目:输入样例 1:123456789050987654321 7输出样例 1:17636684150141093474 3二、解析:思路: 输入两个很大的整数,求他的商和余。刚好BigInteger有求商和余方法(divideAndRemainder),直接调用一下就行。 注意:我提交的时候还突然超时了下,多提...原创 2019-12-31 16:28:55 · 756 阅读 · 4 评论 -
1016 部分A+B (15分)(Java 题解)
1016 部分A+B (15分)原题链接:传送门一、题目:输入样例 1:3862767 6 13530293 3输出样例 1:399二、解析:思路:获取到四位数字(我这里用字符串存放数字,这样方便一点),然后遍历第一位数字A中的每一位numStr ,如果某一位和第二个数字Da相等,那么将这个数字拼接起来。第三个第四个数字同理。AC代码:import java.ut...原创 2019-12-11 23:24:14 · 599 阅读 · 0 评论 -
1014 福尔摩斯的约会 (20分)(Java 题解)
1014 福尔摩斯的约会 (20分)原题链接:传送门一、题目:大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母 D,...原创 2019-12-15 18:16:40 · 983 阅读 · 4 评论 -
1013 数素数 (20分)(Java 题解)
1013 数素数 (20分)原题链接:传送门一、题目:输入样例 1:5 27输出样例 1:11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103二、解析:思路: 首先他题目给了M和N的范围,就可以得到一共有多少个素数,所以创建一个数组把这10000个素数算好存起来。 之后就直接将...原创 2019-12-15 18:37:39 · 627 阅读 · 0 评论 -
1012 数字分类 (20分)(Java 题解)
1012 数字分类 (20分)原题链接:传送门一、题目:输入样例 1:13 1 2 3 4 5 6 7 8 9 10 20 16 18输出样例 1:30 11 2 9.7 9输入样例 2:8 1 2 4 5 6 7 9 16输出样例 2:N 11 2 N 9二、解析:思路: 输入第一个数字N后,直接将后面的数字输入一个处理一个。 注意:最后一个测试点...原创 2019-12-31 16:22:46 · 914 阅读 · 4 评论 -
1011 A+B 和 C (15分)(Java 题解)
1011 A+B 和 C (15分)原题链接:传送门一、题目:输入格式:输入第 1 行给出正整数 T (≤10),是测试用例的个数。随后给出 T 组测试用例,每组占一行,顺序给出 A、B 和 C。整数间以空格分隔。输出格式:对每组测试用例,在一行中输出 Case #X: true 如果 A+B>C,否则输出 Case #X: false,其中 X 是测试用例的编号(从 1 开始...原创 2019-12-05 22:53:35 · 496 阅读 · 0 评论