样例过不去求助
查看原帖
样例过不去求助
511528
封禁用户楼主2021/7/13 10:04
#include <bits/stdc++.h>
using namespace std;
int n,s;
struct node {
	int c,price,ti;
}q[100010];
int st[100010][3];
int t;
bool didi(int x) {
	if(x==1) return false;
	if(!t) return false;
	if(!q[x].c) {
		st[++t][2]=q[x].price;
		st[t][1]=q[x].ti;
		return false;
	}
	else {
		for(int j=t;j<=1;j--) {
			if(!st[j][1]) continue;
			if(st[j][2]>q[x].price&&q[x].ti-st[j][1]<=45) {
				st[j][1]=0;
				return true;
			}
		}
	}
	return false;
}
int main(){
    cin>>n;
    for(int i=1;i<=n;i++) {
    	cin>>q[i].c>>q[i].price>>q[i].ti;
	}
	for(int i=1;i<=n;i++) {
		if(!didi(i)) s+=q[i].price;
	}
	cout<<s;
    return 0;
}
2021/7/13 10:04
加载中...