80分求助!!!
查看原帖
80分求助!!!
1061350
liuyishuo楼主2023/10/10 18:03
#include <bits/stdc++.h>
using namespace std;
int n,x,q,q1=1,price;
const int N=1e6+100;
bool k;
int a[N],b[N],c[N];
struct sub{
	int timer;
	int money;
}way[N];
int main(){
	cin>>n;
	for(int i=1;i<=n;i++)cin>>a[i]>>b[i]>>c[i];
	for(int i=1;i<=n;i++){
		if(a[i]==0){
			price+=b[i],q++;
			way[q].timer=c[i];
			way[q].money=b[i];
		}
		else if(a[i]==1){
			if(q==0){
				price+=b[i];
			}else if(q>0){
				for(int j=1;j<=q;j++){
					if(b[i]<=way[j].money&&c[i]-way[j].timer<=45){
						x=j,k=true;
						break;
					}
				}
				if(k==false){
					price+=b[i];
				}
				else if(k==true){
					for(int j=x;j<q;j++){
						way[j].money=way[j+1].money;
						way[j].timer=way[j+1].timer;
					}		
					k=false,x=0,q--;		
				}
			}
		}
	}
	cout<<price<<endl;
	
	return 0;
}
2023/10/10 18:03
加载中...