PAT 乙级 1043. 输出PATest(20) Java版
给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按“PATestPATest....”这样的顺序输出,并忽略其它字符。当然,六种字符的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按PATest的顺序打印,直到所有字符都被输出。
输入格式:
输入在一行中给出一个长度不超过10000的、仅由英文字母构成的非空字符串。
输出格式:
在一行中按题目要求输出排序后的字符串。题目保证输出非空。
输入样例:
redlesPayBestPATTopTeePHPereatitAPPT
输出样例:
PATestPATestPTetPTePePee
import java.util.ArrayList; import java.util.List; import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);String string = in.nextLine();in.close();List<Character> PList = new ArrayList<>();List<Character> AList = new ArrayList<>();List<Character> TList = new ArrayList<>();List<Character> eList = new ArrayList<>();List<Character> sList = new ArrayList<>();List<Character> tList = new ArrayList<>();for (int i = 0; i < string.length(); i++) {switch (string.charAt(i)) {case 'P':PList.add(string.charAt(i));break;case 'A':AList.add(string.charAt(i));break;case 'T':TList.add(string.charAt(i));break;case 'e':eList.add(string.charAt(i));break;case 's':sList.add(string.charAt(i));break;case 't':tList.add(string.charAt(i));break;}}int maxSize = PList.size();if (AList.size() > maxSize) {maxSize = AList.size();}if (TList.size() > maxSize) {maxSize = TList.size();}if (eList.size() > maxSize) {maxSize = eList.size();}if (sList.size() > maxSize) {maxSize = sList.size();}if (tList.size() > maxSize) {maxSize = tList.size();}for (int i = 0; i < maxSize; i++) {if (i < PList.size()) {System.out.print(PList.get(i));}if (i < AList.size()) {System.out.print(AList.get(i));}if (i < TList.size()) {System.out.print(TList.get(i));}if (i < eList.size()) {System.out.print(eList.get(i));}if (i < sList.size()) {System.out.print(sList.get(i));}if (i < tList.size()) {System.out.print(tList.get(i));}}}}
PAT 乙级 1043. 输出PATest(20) Java版相关推荐
- C++学习之路 | PTA乙级—— 1043 输出PATest (20 分)(精简)
1043 输出PATest (20 分) 给定一个长度不超过 10 4 的.仅由英文字母构成的字符串.请将字符重新调整顺序,按 PATestPATest- 这样的顺序输出,并忽略其它字符.当然 ...
- [PAT乙级]1043 输出PATest
给定一个长度不超过 104 的.仅由英文字母构成的字符串.请将字符重新调整顺序,按 PATestPATest- 这样的顺序输出,并忽略其它字符.当然,六种字符的个数不一定是一样多的,若某种字符已 ...
- PAT 乙级 1009. 说反话 (20) Java版
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区 ...
- PAT 乙级 1019. 数字黑洞 (20) Java版
给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有"数字黑洞&qu ...
- PAT 乙级 1027. 打印沙漏(20) Java版
本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 ************ ***** 所谓"沙漏形状",是指每行输出奇 ...
- PAT 乙级 1029. 旧键盘(20) Java版
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及实际被输入的文字,请你列出肯定坏掉的那些键. 输入格式: 输入在2行中分别给出应该输入的文字.以及实际 ...
- PAT 乙级 1034. 有理数四则运算(20) Java版
本题要求编写程序,计算2个有理数的和.差.积.商. 输入格式: 输入在一行中按照"a1/b1 a2/b2"的格式给出两个分数形式的有理数,其中分子和分母全是整型范围内的整数,负号只 ...
- PAT 乙级 1042. 字符统计(20) Java版
请编写程序,找出一段给定文字中出现最频繁的那个英文字母. 输入格式: 输入在一行中给出一个长度不超过1000的字符串.字符串由ASCII码表中任意可见字符及空格组成,至少包含1个英文字母,以回车结束( ...
- PAT 乙级 1044. 火星数字(20) Java版
火星人是以13进制计数的: 地球人的0被火星人称为tret. 地球人数字1到12的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, no ...
最新文章
- Dev Winform 简洁界面模板制作
- vb.net2019-多线程并行计算(4)
- 评审恩仇录——IDE也能做代码评审?
- [转]详细介绍java中的数据结构
- MFC中获取命令行参数的几种方法
- GNS3中不同型号路由器支持的模块表
- 跟我学PHP第二篇- 配置Mysql以及PHP WampServer篇(1)
- 第12秒做视频封面:阿里云视频截帧功能
- 如何把项目部署到云服务器上,如何把项目部署到云主机
- Linux笔记-利用chkconfig创建脚本使得Rabbimq开机自启
- 围棋棋盘怎么编程python_围_围是什么意思_围字怎么读_围的含义_围字组词-新东方在线字典...
- Maven异常总结002---nexus服务器启动失败wrapper | The nexus service was launched, but failed to start.
- 自从有了这样的可视化报表,我们社区再没有过疫情(内含福利)
- ThinkPHP3.2开启静态缓存
- vivox50pro鸿蒙系统,钱包卡包都承包 vivo X50 Pro+多功能NFC玩法多
- 简易web服务器系统毕业论文设计,毕业论文 简易的WEB服务器的设计
- OpenDDS项目练习指南
- netkeeper客户端_Netkeeper校园客户端(创翼客户端)下载
- 知识图谱构建(概念,工具,实例调研)
- 盖洛普 打破一切常规心得体会(汇集)