动物统计加强版
来源:互联网 发布:excel数据合并汇总 编辑:程序博客网 时间:2024/04/29 15:47
动物统计加强版
时间限制:3000 ms | 内存限制:150000 KB
难度:4
描述
在美丽大兴安岭原始森林中存在数量繁多的物种,在勘察员带来的各种动物资料中有未统计数量的原始动物的名单。科学家想判断这片森林中哪种动物的数量最多,但是由于数据太过庞大,科学家终于忍受不了,想请聪明如你的ACMer来帮忙。
输入
第一行输入动物名字的数量N(1<= N <= 4000000),接下来的N行输入N个字符串表示动物的名字(字符串的长度不超过10,字符串全为小写字母,并且只有一组测试数据)。
输出
输出这些动物中最多的动物的名字与数量,并用空格隔开(数据保证最多的动物不会出现两种以上)。
样例输入
10
boar
pig
sheep
gazelle
sheep
sheep
alpaca
alpaca
marmot
mole
样例输出
sheep 3
来源
[陈玉张云聪]原创
上传者
陈玉
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define N 400000
typedef struct node{
structnode *next[26];
intcount;
}tree;
tree *head;
int num=0;
int num1=0;
char ch[12];
char ch1[12];
int initialtree(){
inti;
head=(tree*)malloc(sizeof(tree));
head->count=0;
for(i=0;i<26;i++)
{
head->next[i]=NULL;
}
return0;
}
void inserttree(char *a){
tree*p,*q=head;
intl,i,j;
l=strlen(a);
for(i=0;i<l;i++)
{
if(q->next[a[i]-'a']==NULL)
{
p=(tree*)malloc(sizeof(tree));
q->next[a[i]-'a']=p;
q=q->next[a[i]-'a'];
q->count=0;
for(j=0;j<26;j++)
{
q->next[j]=NULL;
}
}
else
{
q=q->next[a[i]-'a'];
}
}
q->count++;
if(q->next)
if(num<q->count)
{
num=q->count;
strcpy(ch,a);
}
if(num1<=q->count)
{
num1=q->count;
if(num1==num)
strcpy(ch1,a);
}
}
int findtree(char *a){
inti,l;
tree*p=head;
l=strlen(a);
for(i=0;i<l;i++)
{
if(p->next[a[i]-'a']==NULL)return 0 ;
elsep=p->next[a[i]-'a'];
}
returnp->count;
}
int main(){
intm=0,i,n;
chara[N];
initialtree();
scanf("%d",&n);
for(i=0;i<n;i++)
{
getchar();
scanf("%s",a);
inserttree(a);
}
if(strcmp(ch,ch1)!=0&&num==num1)
{
printf("%s%d ",ch,num);
printf("%s%d\n",ch1,num);
}
else
{
printf("%s%d\n",ch,num);
}
return0;
}
- 动物统计加强版
- 动物统计加强版
- 动物统计加强版
- 动物统计加强版
- 动物统计加强版
- nyoj_290动物统计加强版
- NYOJ290-动物统计加强版
- 动物统计加强版 nyoj290
- nyoj290动物统计加强版
- nyoj290 动物统计加强版
- NYOJ 290 动物统计加强版
- Nyoj-290动物统计加强版
- NYOJ 题目290 动物统计加强版
- NYOJ-290-动物统计加强版
- nyoj 290 动物统计加强版
- 南阳 290 动物统计加强版
- NYOJ290,动物统计加强版HashMap
- 动物统计加强版(字典树)
- Opencv中的ROI介绍
- 使用struts2标签库时第一次打开报错、第二次打开不报错
- 谁可以讲讲异构开发与并行开发?
- Java调用.Net的web service的几种方式
- 黑马程序员 <梦想之旅> JAVA基础
- 动物统计加强版
- 【编写可读代码的艺术】第一部分 表面层次的改进
- hdu 1075 What Are You Talking About(字典树)
- unity 动画无法进行编辑
- 关于IE10浏览器LinkButton无效的解决方案
- 【编写可读代码的艺术】第二部分 简化循环和逻辑
- iostat、top查看系统性能统计\hdparm查看磁盘的速度
- 【编写可读代码的艺术】第三部分 重新组织你的代码
- 【编写可读代码的艺术】第四部分 精选话题