开一个长度为6的整型数组分别记录6个字符的数量,输出的时候条件是数组中至少存在一个不为零的元素
while(PATest[0]||PATest[1]||PATest[2]||PATest[3]||PATest[4]||PATest[5]){//当6个还有一个不为0 AC代码
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#include<bits/stdc++.h>
using namespace std;
const int maxn = 10010;
const double eps = 1e-3;
int main(){
char str[maxn];
cin.getline(str,maxn);
int len = strlen(str);
int PATest[6] = {0};
for(int i=0;i<len;i++){
if(str[i]=='P')PATest[0]++;
if(str[i]=='A')PATest[1]++;
if(str[i]=='T')PATest[2]++;
if(str[i]=='e')PATest[3]++;
if(str[i]=='s')PATest[4]++;
if(str[i]=='t')PATest[5]++;
}
while(PATest[0]||PATest[1]||PATest[2]||PATest[3]||PATest[4]||PATest[5]){//当6个还有一个不为0
if(PATest[0]){
printf("P");
PATest[0]--;
}
if(PATest[1]){
printf("A");
PATest[1]--;
}
if(PATest[2]){
printf("T");
PATest[2]--;
}
if(PATest[3]){
printf("e");
PATest[3]--;
}
if(PATest[4]){
printf("s");
PATest[4]--;
}
if(PATest[5]){
printf("t");
PATest[5]--;
}
}
return 0;
}版权声明:本文为weixin_44997802原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。