求助大佬,本地没问题,洛谷全红
查看原帖
求助大佬,本地没问题,洛谷全红
1073534
yuanbaoyi楼主2023/10/12 21:31

代码

#include <iostream>
#include <cmath>
using namespace std;

const long long N = 1000005;
struct Ticket {
	int t,m;//地铁还是公交车,最晚时间,价格
	bool used;
}tic[N];

int main(){

	long long n,head = 0,tail = 0;
	cin>>n;
	long long price = 0;

	for (int i = 0;i < n;i++){
		int sorb,time,money;
		cin>>sorb>>money>>time;//地铁,钱数and时间
		if (!sorb){//地铁
			tail++;
			price += money;
			tic[i].m = money;
			tic[i].t = time + 45;//只存优惠券
		}
		else{//公交
			int nhead = head;
			for (int i = head;i < tail;i++){
		
				if(tic[i].t < time){
					nhead = i;
					continue;
				}
				if(tic[i].m >= money && !tic[i].used){
					tic[i].used = 1;
					price -= money;
					break;
				}
			}
			head = nhead;
			price += money;
		}
	}
	cout<<price<<endl;
	return 0;
}

本地的数据都是对的,但洛谷的输出不一样 蒟蒻太弱了看两遍没看出问题 (洛谷测评机应该木有问题吧。。。)

2023/10/12 21:31
加载中...