hdoj 1004 Let the balloon rise (字符串处理问题)

阅读: 评论:0

hdoj 1004 Let the balloon rise (字符串处理问题)

hdoj 1004 Let the balloon rise (字符串处理问题)

思路:每输入一个字符串,跟前面的进行比较,如果有一样的前面的气球数量+1,如果没有气球种类加1

代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
struct 	balloon								//定义气球的结构体,存储每种气球的颜色和数量 
{char cl[20];int  count;
};int judge(char *p1,char *p2)				//判断两个字符串是否相等;如果是指针的新手千万记得p1,p2指向的只是字符数组的首地址 
{while(*p1==*p2 && *p1){p1++;p2++;} if(!*p1 && !*p2)return 1;elsereturn 0;
}
int main(int argc, char *argv[]) {int x;int n;int i;int key;int m;int max;char b[20];char maxball[20];struct balloon ball[1200];while(scanf("%d",&n) && n!=0){m=0;max=0;for(i=0;i<1200;i++)											//一定要进行初始化,防止影响下一次的测试 {memset(ball[i].cl,'',sizeof(char)*20);					ball[i].count=0;}for(i=0;i<n;i++)											//每输入一次判断一次,如果是有过的气球则数量加1,没有的颜色种类加1 {scanf("%s",b);key=0;for(x=0;x<m;x++){if(judge(ball[x].cl,b)==1){ball[x].count++;key=1;}}if(key==0){strcpy(ball[m].cl,b);m++;}} max=ball[0].count;											//找出数量最多的气球 strcpy(maxball,ball[0].cl);for(i=1;i<n;i++){if(ball[i].count>max){max=ball[i].count;strcpy(maxball,ball[i].cl);}}printf("%sn",maxball);}return 0;
}

本文发布于:2024-02-05 07:47:36,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170727729664661.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字符串   hdoj   rise   balloon
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23