【编程题目 | 100分】足球比赛排名 [ 2021 Q1 考试题 ]
时间限制:C/C++ 1000ms | 其他语言:2000ms
空间限制:C/C++ 262144K,其他语言:524288K
64bit IO Format:%lld
本题可使用本地IDE编码,不能使用本地已有代码。
无跳出限制,编码后请点击”保存并提交“按钮进行代码提交。
■ 题目描述
足球比赛采用双循环赛制(即任意两队之间分主客场进行两场比赛),胜平负分别得分3、1、0分。
设计一个足球比赛自动排名系统,以数组形式输入比赛信息,如String[] str = {“a—b 2:1″,”a—c 3:4”}。
假设队伍名为a-z的26个英文字母,比赛球队最多26只。
输出各个参赛球队的积分并由高到低排名(积分相同的按照球队名进行字典序排序)。
3:0
1:1
输入描述
输入的每一行代表一场比赛的比分(每场比分的2个数值为0~9之间,即大于等于0,小于等于9),队伍之间以”-“分隔,比分之间以”:”分隔,空行为输入结束。
输入保障正确,每两个队伍之间有主客场两场比赛,不多也不少,不需要异常判断。
输出描述
输出各个参赛球队的积分并由高到低排名(积分相同的按照球队名进行字典序排序)。
输出结果中,队伍之间以”,”分隔。
示例 1 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
a-b 3:0
b-a 1:1
输出
a 4,b 1
说明
a-b 3:0,则a积3分,b积0分;
b-a 1:1,则a积1分,b积1分。
因此最终a积4分,b积1分。
示例 2 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
a-b 3:0
a-c 2:1
b-a 1:1
c-a 0:1
b-c 4:3
c-b 2:2
代码实现
C++
剩余50%内容,订阅会员后查看
此处内容需要权限查看
会员免费查看JAVA
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.PrintWriter; import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(new BufferedInputStream(System.in)); PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));
剩余50%内容,订阅会员后查看
此处内容需要权限查看
会员免费查看