NC231679. 龙神的分类
描述
奖牌种类 | |||
---|---|---|---|
iron | bronze | silver | gold |
奖牌等级 | ||||
---|---|---|---|---|
toy | normal | rare | epic | legend |
输入描述
第一行一个整数 ,表示龙神笔记中 所瞥到的部分中的奖牌的数量。
接下来 行,每行两个由单个空格分隔开的字符串 , 分别表示奖牌级别、奖牌种类。
输出描述
以 "奖牌级别 奖牌种类:拥有数量"的格式,按"奖牌级别 奖牌种类"的字典序升序输出龙神的奖牌的统计信息。
示例1
输入:
9 toy gold toy gold toy gold toy bronze normal bronze normal bronze normal bronze rare iron rare iron
输出:
normal bronze:3 rare iron:2 toy bronze:1 toy gold:3
C++ 解法, 执行用时: 35ms, 内存消耗: 500K, 提交时间: 2021-12-19 13:15:39
#include<bits/stdc++.h> using namespace std; map<string,int> mp; int main(){ int t; cin>>t; cin.ignore(); while(t--){ string s; getline(cin,s); mp[s]++; } for(auto it:mp){ cout<<it.first<<":"<<it.second<<endl; } return 0; }
pypy3 解法, 执行用时: 330ms, 内存消耗: 27980K, 提交时间: 2021-12-19 13:26:51
n = int(input()) d = dict() for i in range(n): a = input() if d.get(a): d[a] += 1 else: d[a] = 1 d = sorted(d.items()) for c in d: print(c[0] + ':', end = '') print(c[1])
Python3 解法, 执行用时: 295ms, 内存消耗: 11760K, 提交时间: 2022-03-21 22:18:46
n=int(input()) list1=[] for i in range(n): list1.append(input()) prec={} for i in sorted(list(set(list1))): prec[i]=list1.count(i) for k,v in prec.items(): print(str(k)+':'+str(v))