数据结构实验之查找三:树的种类统计
来源:互联网 发布:python turtle安装 编辑:程序博客网 时间:2024/06/15 10:05
Problem Description
随着卫星成像技术的应用,自然资源研究机构可以识别每一个棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。
Input
输入一组测试数据。数据的第1行给出一个正整数N (n <= 100000),N表示树的数量;随后N行,每行给出卫星观测到的一棵树的种类名称,树的名称是一个不超过20个字符的字符串,字符串由英文字母和空格组成,不区分大小写。
Output
按字典序输出各种树的种类名称和它占的百分比,中间以空格间隔,小数点后保留两位小数。
Example Input
2This is an Appletreethis is an appletree
Example Output
this is an appletree 100.00%
#include <bits/stdc++.h>using namespace std;struct node{ char str[22]; int cnt; struct node *l, *r;};int n;struct node *Inster(struct node *Head, char *s){ if(!Head) { Head = new node; Head->cnt = 1; strcpy(Head->str, s); Head->l = NULL, Head->r = NULL; } else { int cmp = strcmp(Head->str,s); if(cmp > 0) Head->l = Inster(Head->l, s); else if(cmp < 0) Head->r = Inster(Head->r, s); else Head->cnt++; } return Head;}void Mid(struct node *Head){ if(Head) { Mid(Head->l); printf("%s %.2lf%c\n",Head->str,Head->cnt*100.0/n,'%'); Mid(Head->r); }}int main(){ struct node *Head = NULL; char str[22]; scanf("%d\n",&n); for(int j=0; j<n; j++) { gets(str); for(int i=0; str[i]; i++) { if(str[i] >= 'A' && str[i] <= 'Z') str[i] += 32; } Head = Inster(Head,str); } Mid(Head); return 0;}
阅读全文
0 0
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计 (STL)
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- SDUT3375数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- SDUTACM 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计(二叉排序树)
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- Java虚拟机字节码执行引擎
- Redis集群
- 深入了解构造函数
- Tensorflow深度学习之二十一:LeNet的实现(CIFAR-10数据集)
- Swiper动态加载不显示没效果
- 数据结构实验之查找三:树的种类统计
- struts2文件上传
- Group_concat介绍与例子
- 将jar包 打成可以直接执行某个类的main函数 通过java -jar 执行jar包
- 一些基本的形态学算法
- 卷积网络为什么有效的直观原理解释
- centos7环境下kubeadm方式部署 kubernetes 1.7
- 微信又又双叕更新,这次有点厉害了!
- 每日总结