答案~~~

Part 1.题目大意

输入三个数,w,n,m,表示队伍 w 在第n 分钟第 m 秒得到了一分。

然后分别输出两支队伍比分大于另一支队伍的时间。

Part 2.蒟蒻的思路

读入数据后,将时间转换为秒,再使 sk[ 时间 ][ 得分队伍 ]+1,这样就可以用 sk[x][y] 表示在第 x 秒第 y 只队伍得到的分数。

然后再一秒一秒的遍历,有队伍得分就给这支队伍的得分加上 sk【时间 】【得分队伍 】,加上得分后判断哪只队伍得分更大,给得分大的那只的领先时间 +1。

最后将两支队伍的领先时间转换成分秒表示,并输出。

所以程序整体为 3部分:读入,遍历,输出。

Part3.蒟蒻的代码

#include <bits/stdc++.h> //可爱的万能头
using namespace std;
short sk[3001]; //记录得分时间
int ans[3]; //记录领先时间
int main(){
    int n,w,m,s;
    int p1=0,p2=0; //分数1,2
    char c;//吞冒号
	cin>>n;
	while(n--){
		cin>>w>>m>>c>>s; //读入
		sk[s+m*60][w]++; //存得分
	}for(int i=0;i<2880;i++){ //时间一秒一秒的遍历
		if(sk[i][1]!=0)	p1+=sk[i][1]; //改变队伍1比分
		if(sk[i][2]!=0)	p2+=sk[i][2]; //改变队伍2的比分
		if(p1>p2) ans[1]++;
		if(p1<p2) ans[2]++; //判断领先
	}printf("%02d:%02d\n%02d:%02d",ans[1]/60,ans[1]%60,ans[2]/60,ans[2]%60); //前导零的简便输出法
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值