0056:竞赛评分

总时间限制: 

1000ms

 

内存限制: 

65536kB

描述

现举行一次小竞赛,参赛的3支队伍,编号为1,2,3.每支队列轮流回答问题,如果回答正确,加10分;回答错误,扣10分;放弃回答不得分.经过多轮答题后,我们要统计各队的名次和得分.

输入

第一行为回答问题的轮次数n.
其余各行分别为1,2,3号队伍答题的结果,回答正确为right,错误为wrong,放弃为give-up.

输出

按名次输出各队的编号和得分.名次相同的在同一行输出,且编号小者靠前.

样例输入


4 right wrong give-up right right right wrong right right right right right


样例输出


(3,30) (1,20)(2,20)


来源

计算概论05

分数相同无空格

import java.util.Arrays;

import java.util.Comparator;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;

public class Main {

public static void main(String[] args) {
Scanner cin=new Scanner(System.in);


int n=cin.nextInt();
cin.nextLine();
P [] p=new P [3];

for(int i=0;i<3;i++)
{
p[i]=new P(i+1,0);
}
for(int i=0;i<n;i++)
{
for(int j=0;j<3;j++)
{
String s=cin.next();

if(s.equals("right"))
{

p[j].a+=10;
}
else if(s.equals("wrong"))
{
p[j].a-=10;
}
}
}
Arrays.sort(p,new MyComprator());
for(int i=0;i<3;i++)
{
if(i+1<3&&p[i].a!=p[i+1].a)
System.out.println("("+p[i].id+","+p[i].a+")");
else
System.out.print("("+p[i].id+","+p[i].a+")");
}

}

}
class P
{
public int id,a;


public P(int id, int a) {
super();
this.id = id;
this.a = a;
}


}
class MyComprator implements Comparator<P> {
public int compare(P t1, P t2) {
if(t1.a==t2.a)
{
return t1.id-t2.id;
}
return t2.a-t1.a;
}
}