NC215115. A++++++++++++++++++
描述
有一天,小西的好朋友Antinomy来到西大参观,发现校园里有两副巨大的画,一幅的标题是《创新》,一幅的标题是《创业》,但都是空白的。
于是Antinomy问小西:“这两幅画应该是画的什么呀?”
小西:“里面是正在从事创新或者创业的同学。”
Antinomy:“什么是创新?”
小西:“从事高水平科研技术研究和参加高水平学科竞赛,简单来说就是学术活动和技能训练。”
Antinomy:“什么是创业?”
小西:“基于行业实际发展情况和实时政治经济情况,在有限资本下创立可持续盈利且具有较大发展空间的活动。”
小西:“至于为什么这两幅画是空白的,因为同学们都在参加创新创业竞赛。”
众所周知,创新创业类竞赛是我们学校人均参加的重量级竞赛,这一类别的竞赛在评奖评优或推免评比的考核中占据绝对性优势,即所谓的“A+”类竞赛。
但众所周知,之所以A+类竞赛是A+类竞赛,只是因为最高只能是这么多,现在Antinomy想知道,假设没有这个限制,给出竞赛名称冠名的Title集合,请求出这个竞赛的等级。
小西认为,对于给出的个title中,每能组成一对(也就是中国国际),那么竞赛的等级就可以在A的基础上增加一个+。
输入描述
输入第一行为测试用例,接下来有组测试数据
每组测试用例第一行为一个整数,表示有个title接下来行每行一个字符串表示第个title,title只可能是national或者international
输出描述
对于每组测试用例输出此时的竞赛等级
示例1
输入:
4 3 national international national 4 national international national international 4 national national national national 4 international international national national
输出:
A+ A++ A A++
C++(clang++11) 解法, 执行用时: 263ms, 内存消耗: 760K, 提交时间: 2020-12-19 15:03:13
#include<bits/stdc++.h> using namespace std; int t,n,x,y;string c; int main() { for(cin>>t;t--;x=y=0) { for(cin>>n;n--;) { cin>>c; if(c=="national")x++; if(c=="international")y++; }cout<<'A'; for(x=min(x,y);x--;)cout<<'+'; puts(""); } }
pypy3(pypy3.6.1) 解法, 执行用时: 651ms, 内存消耗: 28596K, 提交时间: 2020-12-19 14:42:47
T = int(input()) for cas in range(T): n = int(input()) r1, r2 = 0, 0 for i in range(n): s = input() r1 += int(s == 'national') r2 += int(s == 'international') print('A' + min(r1, r2) * '+')
Python3(3.9) 解法, 执行用时: 832ms, 内存消耗: 4624K, 提交时间: 2020-12-19 14:01:51
T = int(input()) while T > 0: T -= 1 n = int(input()) a = [input() for i in range(n)]; print('A' + '+' * min(a.count('national'), a.count('international')))