【杭电】[3783]ZOJ

文章字数:123

问题描述

Loading...

问题分析

思路是分别记录 ‘Z’ ‘O’ ‘J’ 的个数
然后有个数就按照ZOJ的顺序输出

cpp
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include<stdio.h>
#include<string.h>
int main() {
	char s[100];
	int i;
	int z,o,j;
	while(scanf("%s",s),s[0]!='E') {
		for(i=z=o=j=0; i<strlen(s); i++) {
			if(s[i]=='Z')
				z++;
			else if(s[i]=='O')
				o++;
			else if(s[i]=='J')
				j++;
		}
		for(i=0; i<strlen(s); i++) {
			if(z>0) {
				printf("Z");
				z--;
			}
			if(o>0) {
				printf("O");
				o--;
			}
			if(j>0) {
				printf("J");
				j--;
			}
		}
		printf("\n");
	}
	return 0;
}
本文采用 CC BY-NC-SA 4.0协议,如果对您有帮助或存在意见建议,欢迎在下方评论交流。
本页面浏览次数 加载中...
本页面访客数 加载中...

加载中...