Description

随着卫星成像技术的应用,自然资源研究机构可以识别每一个棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。
Input

输入一组测试数据。数据的第1行给出一个正整数N (n <= 100000),N表示树的数量;随后N行,每行给出卫星观测到的一棵树的种类名称,树的名称是一个不超过20个字符的字符串,字符串由英文字母和空格组成,不区分大小写。
Output

按字典序输出各种树的种类名称和它占的百分比,中间以空格间隔,小数点后保留两位小数。
Sample
Input

2
This is an Appletree
this is an appletree

Output

this is an appletree 100.00%

Hint

哈希树
字典树

#include<bits/stdc++.h>using namespace std;typedef struct node
{char name[30];int cnt;struct node *l, *r;
} tree;int n;
tree *create(tree *&root, char str[])
{if(root == NULL){root = new tree;strcpy(root->name, str);root->cnt = 1;root->l = NULL;root->r = NULL;}else{int temp = strcmp(root->name, str);if(temp > 0)create(root->l, str);else if(temp < 0)create(root->r, str);else root->cnt++;}return root;
}void midorder(tree *root)
{if(root){midorder(root->l);printf("%s %.2lf%%\n", root->name, 100.0 * root->cnt / n);midorder(root->r);}
}
int main()
{//ios::sync_with_stdio(0);不能加这条语句,加了不给过int t;char s[30];tree *root;root = NULL;cin >> t;n = t;getchar();while(t--){gets(s);int len = strlen(s);for(int i = 0; i < len; i++){if(s[i] >= 'A' && s[i] <= 'Z')s[i] += 'a' - 'A';}root = create(root, s);}midorder(root);return 0;
}

C - 数据结构实验之查找三:树的种类统计(哈希树)相关推荐

  1. SUTD OJ 数据结构实验之查找二:平衡二叉树

    数据结构实验之查找二:平衡二叉树 Time Limit: 400 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 根据给 ...

  2. SDUT_2118 数据结构实验之链表三:链表的逆置

    点击打开链接 数据结构实验之链表三:链表的逆置 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Problem De ...

  3. SDUT-3378_数据结构实验之查找六:顺序查找

    数据结构实验之查找六:顺序查找 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 在一个给定的无序序列里,查找与给定关键字 ...

  4. 数据结构实验之查找七:线性之哈希表

    数据结构实验之查找七:线性之哈希表 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 根据给定 ...

  5. SDUT 3379 数据结构实验之查找七:线性之哈希表

    数据结构实验之查找七:线性之哈希表 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 根据给定的一系列整数关键字和素数p, ...

  6. SDUT 3377 数据结构实验之查找五:平方之哈希表

    数据结构实验之查找五:平方之哈希表 Time Limit: 400MS Memory Limit: 65536KB Submit Statistic Problem Description 给定的一组 ...

  7. SDUT 3347 数据结构实验之数组三:快速转置

    数据结构实验之数组三:快速转置 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 转置运算是一种最简单的矩阵运算,对于一个 ...

  8. SDUT 3400 数据结构实验之排序三:bucket sort

    数据结构实验之排序三:bucket sort Time Limit: 150MS Memory Limit: 65536KB Submit Statistic Problem Description ...

  9. 3374——数据结构实验之查找二:平衡二叉树

    数据结构实验之查找二:平衡二叉树 ( LL RR LR RL) Problem Description 根据给定的输入序列建立一棵平衡二叉树,求出建立的平衡二叉树的树根. Input 输入一组测试数据 ...

最新文章

  1. Linux学习之CentOS(三)--初识linux的文件系统以及用户组等概念
  2. input在type=number时去右边上下箭头
  3. Vue系列vue-router的嵌套使用(四)
  4. infinitescroll php,WordPress: 增加无限分页(Infinite Scroll)功能
  5. Matplotlib 三维图像 入门
  6. [原] KVM 虚拟化原理探究(6)— 块设备IO虚拟化
  7. vlan的基本指令_华为:vlan基础命令及配置实验
  8. Android SDK的环境变量配置
  9. 盘点10种局域网联机游戏
  10. CAD教程:CAD自定义菜单和工具栏的操作技巧
  11. oracle 查询优化
  12. flutter安装教程与XD教程
  13. 国家虚拟仿真实验教学项目共享平台(实验空间)PHP SDK
  14. 华为x6000刀箱和机架服务器RAID配置和超线程关闭
  15. 用计算机算平米怎么算,平米换算亩怎么算(平方米换算亩计算器)
  16. 傲游浏览器 页面广告过滤 自定义 过滤规则 及使用方法 不定时更新
  17. java算多元回归方程_java多元线性回归算法
  18. Word之页眉和页脚设置(一)
  19. 多目标/单-VRT路径规划-更新汇总
  20. 记一次无备份恢复Mysql误删用户数据

热门文章

  1. 【 c#】实现form窗口中,通过按钮实现tabPage的切换
  2. Docker run 命令【转】
  3. ibatis annotations 注解方式返回刚插入的自增长主键ID的值--转
  4. Lesson 8.1Lesson 8.2 决策树的核心思想与建模流程CART分类树的建模流程与sklearn评估器参数详解
  5. 元宇宙iwemeta: 韩国政府力挺元宇宙, 打造元宇宙城市 出台五年规划
  6. 旷视:深度学习框架开源
  7. The Wide and Deep Learning Model(译文+Tensorlfow源码解析) 原创 2017年11月03日 22:14:47 标签: 深度学习 / 谷歌 / tensorf
  8. KNN与K-Means
  9. 大数据市场规模5年将达8000亿 交易平台忙圈地
  10. jvm性能调优 - 19G1分代回收原理深度图解