HDU 3783
上題目 Problem Description 讀入一個字符串,字符串中包含ZOJ三個字符,個數不一定相等,按ZOJ的順序輸出,當某個字符用完時,剩下的仍然按照ZOJ的順序輸出。
Input 題目包含多組用例,每組用例占一行,包含ZOJ三個字符,當輸入“E”時表示輸入結束。
1<=length<=100。
Output 對於每組輸入,請輸出一行,表示按照要求處理後的字符串。
具體可見樣例。
Sample Input
ZZOOOJJJ
ZZZZOOOOOJJJ
ZOOOJJ
E
Sample Output
ZOJZOJOJ
ZOJZOJZOJZOO
ZOJOJO
Source 浙大計算機研究生復試上機考試-2009年 思想就是把ZOJ三個字符存到數組裡面然後按順序輸出。 貼代碼。
#include
#include
int main()
{
char a[105];
int b[105];
while(scanf("%s",a)!=EOF &&a[0]!='E')
{
memset(b,0,sizeof(b));
int l,i;
l=strlen(a);
for(i=0;i0)
{
printf("Z");
b['Z']--;
}
if(b['O']>0)
{
printf("O");
b['O']--;
}
if(b['J']>0)
{
printf("J");
b['J']--;
}
}
printf("\n");
}
return 0;
}