0736 ABC354_B AtCoder Janken 2 | OJ题库 | CODE STUDY
CODE STUDY
Programming Practice Platform

欢迎回来

0736

ABC354_B AtCoder Janken 2

Easy 时间限制 1000 ms 内存限制 262144 KB
排序 字符串

题目详情

返回题库

题目描述

N个AtCoder用户聚集在一起玩AtCoder RPS 2。第i个用户的名字是Si​,他们的评分是Ci​。

AtCoder RPS 2 的玩法如下:

  • 按照用户名的词序将数字0,1,…,N−1分配给用户。
  • 设T为N个用户的评分总和。获胜者是编号为TmodN的用户。

打印获胜者的用户名。

什么是词典顺序?

词典顺序,简单地说,就是 "单词在词典中出现的顺序"。更准确地说,确定由小写英文字母组成的两个不同字符串S和T的顺序的算法如下:

这里,"S的第i个字符 "表示为Si​。如果S的词性小于T,我们就写成S<T;如果S的词性大于T,我们就写成S>T。

  1. 设L是S和T中较短字符串的长度。检查Si​和Ti​是否与i=1,2,…,L匹配。
  2. 如果存在一个i与≠匹配,则让j成为最小的i。比较Sj​和Tj​。如果Sj​在字母顺序上小于Tj​,那么就是S<T。否则,S>T。算法到此结束。
  3. 如果没有i小于≠,则比较S和T的长度。如果S比T短,那么就是S<T。如果S更长,那么S>T。算法到此结束。

输入描述

第一行输入N

接下来N行:分别输入姓名字符串S和得分C

数据范围:

  • 1≤N≤100
  • $S_{i}$是一个由小写英文字母组成的字符串,长度在3和16之间(含)。
  • S1​,S2​,…,SN​都是不同的字母。
  • 1≤Ci​≤4229
  • Ci​为整数

输出描述

打印出答案

提示

样例1:

三个用户的评分总和为13。将他们的名字按词性顺序排列后,得到 "aoki"、"snuke"、"takahashi",因此 "aoki "的编号为0,"snuke "的编号为1,"takahashi "的编号为2。

因为13mod3=1,所以打印编号为1的snuke。

测试样例

样例支持多行内容展示
样例1
输入
3
takahashi 2
aoki 6
snuke 5
输出
snuke
样例2
输入
3
takahashi 2813
takahashixx 1086
takahashix 4229
输出
takahashix
editor.py

提交前会先自动运行样例。只有样例全部通过,才会进入后端正式判题。