杭电ACM——1004——LetTheBalloonRise

第一次完全自己写且一次提交就Accepted,开心,纪念一下
并第一次使用markdown
#include <stdio.h>
#include <string.h>
#define MAX_N 1000
#define MAX_COLOR_LENGTH 16

int main()
{
	int N;
	int i , j , k;
	char color[MAX_COLOR_LENGTH];   //每次输入的颜色
	char colortype[MAX_N][MAX_COLOR_LENGTH];  //一维下标表示颜色类型号,每一列表示一种颜色
	int typenum;
	int colorsum[MAX_N];   //下标表示颜色类型号,值表示该种颜色的气球个数
	int max;  //记录当前各种颜色类型气球的个数的最大值(当前最popular的气球个数)
	int popular; //记录当前最popular的气球所对应的颜色类型号(即colortype的一维下标)
	while( 1 )
	{		
		//printf ( "输入N:" );
		scanf ( "%d" , &N );
		if( N == 0 )
		{
			return 0;
		}
		else
		{
			i = 0;
			memset ( colortype , 0 , sizeof(colortype) );
			typenum = 0;
			memset ( colorsum , 0 , sizeof(colorsum) );
			max = 0;
			popular = 0;
			while( i < N )
			{
				scanf( "%s" , color);

				//printf( "color = %s\n" , color);

				if ( i == 0 )
				{
					strcpy ( colortype[typenum] , color );					
					//printf ( "colortype[0] = %s\n" , colortype[typenum] );  					
					colorsum[typenum] ++ ; 
					typenum ++ ;
					max = 1;
					popular = 0;
				}
				else
				{
					for ( j=0 ; j<typenum ; j++)
					{
						k = strcmp( colortype[j] , color );

						if ( k == 0 )
						{
							colorsum[j] ++ ;
							if( colorsum[j] > max )
							{
								max = colorsum[j];
								//printf ( "max = %d\n" , max); 
								popular = j;
							}
							break;
						}
					}
					if ( k != 0 )
					{
						
						strcpy ( colortype[typenum] , color );						
						//printf ( "k!=0 colortype[%d] = %s\n" , typenum , colortype[typenum] );
						colorsum[typenum] ++ ;
						typenum ++ ;
					}
				} //i!=0
				i++;
			}
			//printf ( "max = %d\n" , max );
			//printf ( "popular = %d\n" , popular );
			printf ( "%s\n" , colortype[popular] );
		}
	}
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YANG_LJ_is_ME

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值