Skip to content

22271:绿水青山之植树造林活动

http://cs101.openjudge.cn/practice/22271/

据我国史料记载,现在植被稀少的黄土高原、渭河流域也曾是森林遍布、山清水秀。楼兰古城因屯垦开荒、盲目灌溉,导致孔雀河改道而衰落。自然生态的变迁决定着人类文明的兴衰更替。习近平总书记在阐述生态与文明的关系时指出:“生态兴则文明兴,生态衰则文明衰”。

2013年4月2日,习近平总书记在参加首都义务植树活动时指出,我们必须清醒地看到,我国总体上仍然是一个缺林少绿、生态脆弱的国家,植树造林,改善生态,任重而道远。

2020年,习近平总书记在参加首都义务植树活动时强调,要牢固树立“绿水青山就是金山银山”的理念,加强生态保护和修复,扩大城乡绿色空间,为人民群众植树造林,努力打造青山常在、绿水长流、空气常新的美丽中国。

为了更科学地植树造林,需要对现有树木的种类进行统计,你能完成这个任务,为建设生态文明贡献一己之力吗?

img

输入

输入第一行给出一个正整数N(N<=100000),为树的数量。随后的N行,每行给出卫星观测到的一颗树的种类名称。种类名称是不超过30个英文字母和空格组成的字符串。

输出

按字典序递增输出各种树的种类名称及其所占总数的百分比,其间以空格分隔,精确到小数点后四位

样例输入

4
Apple
Cherry
Pear
Peach

样例输出

Apple 25.0000% 
Cherry 25.0000%
Peach 25.0000%
Pear 25.0000%
python
import sys
from collections import Counter

def main():
    # 读取输入
    input_data = sys.stdin.read().strip().split('\n')
    N = int(input_data[0])  # 树的总数
    tree_names = input_data[1:]  # 每棵树的种类名称

    # 统计每种树的数量
    tree_counter = Counter(tree_names)

    # 按字典序排序
    sorted_trees = sorted(tree_counter.items())

    # 输出结果
    for tree, count in sorted_trees:
        percentage = (count / N) * 100
        print(f"{tree} {percentage:.4f}%")

if __name__ == "__main__":
    main()