码迷,mamicode.com
首页 > 其他好文 > 详细

PAT乙级题库“傻瓜题解”之输出PATest

时间:2019-11-10 17:32:07      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:using   lis   ram   题解   mat   eset   tap   ensure   -o   

给定一个长度不超过 10?4?? 的、仅由英文字母构成的字符串。请将字符重新调整顺序,按 PATestPATest.... 这样的顺序输出,并忽略其它字符。当然,六种字符的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按 PATest 的顺序打印,直到所有字符都被输出。

输入格式:

输入在一行中给出一个长度不超过 10?4?? 的、仅由英文字母构成的非空字符串。

输出格式:

在一行中按题目要求输出排序后的字符串。题目保证输出非空。

输入样例:

redlesPayBestPATTopTeePHPereatitAPPT

输出样例:

PATestPATestPTetPTePePee

 1 #include<iostream>
 2 #include<string>
 3 using namespace std;
 4 int main()
 5 {
 6     string str;
 7     cin>>str;
 8     int x[150]={0};
 9     for(int i=0;i<str.length();i++)
10     {
11         if(str[i]==P||str[i]==A||str[i]==T||str[i]==e||str[i]==s||str[i]==t)
12         x[str[i]]++;
13     }    
14     while(1)
15     {
16         if(x[80]==0&&x[65]==0&&x[84]==0&&x[101]==0&&x[115]==0&&x[116]==0) break;
17         if(x[80])
18         {
19             cout<<P;
20             x[80]--;
21         }
22         if(x[65])
23         {
24             cout<<A;
25             x[65]--;
26         }
27         if(x[84])
28         {
29             cout<<T;
30             x[84]--;
31         }
32         if(x[101])
33         {
34             cout<<e;
35             x[101]--;
36         }
37         if(x[115])
38         {
39             cout<<s;
40             x[115]--;
41         }
42         if(x[116])
43         {
44             cout<<t;
45             x[116]--;
46         }
47      } 
48     return 0;
49  } 

 

 

PAT乙级题库“傻瓜题解”之输出PATest

标签:using   lis   ram   题解   mat   eset   tap   ensure   -o   

原文地址:https://www.cnblogs.com/solititude/p/11830818.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!