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

杭电OJ 1004实现和一些注意的陷阱

时间:2015-11-12 17:50:42      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

1004题其实很简单,就是要你统计最多气球的个数,但是在输出的时候却需要认真仔细,符合题目要求。

在输出是首先注意的是输出顺序:如果有多个数量相同的颜色,先输入的先输出,如,

red

green

red

green

这种情况需要输出

red

green

贴出AC代码:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(){

	int n = 1;
	int i = 0;
	int max = 0;
	int maxindex = 0;
	int j = 0;
	char color[1000][16];
	int *cnum;
	while(n){
		scanf("%d",&n);
		cnum = (int *)malloc(sizeof(int) * n);
		for(i = 0;i < n;i ++) 
		{
			scanf("%s",&color[i]);
		}
		for(i = n - 1;i >= 0;i --) 
		{
			cnum[i] = 1;
			if(i != n - 1){
				for(j = n - 1;j > i;j -- )
					if(strcmp(color[i],color[j]) == 0){
						cnum[i] ++;
					}
			}
		}
		max = cnum[0];
		maxindex = 0;
		for(i = 0;i < n;i ++){
			if(max < cnum[i]){
				max = cnum[i];
				maxindex = i;
			}
		}
		for(i = 0;i < n;i ++) 
			if(max == cnum[i]){
				printf("%s\n",color[i]);
			}
		

	}
	
	return 0;
}

  

杭电OJ 1004实现和一些注意的陷阱

标签:

原文地址:http://www.cnblogs.com/zhuhongjongy/p/4959522.html

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