5ps,样例过,4WA+TLE,玄关求助
查看原帖
5ps,样例过,4WA+TLE,玄关求助
1072970
xzc_yhxr楼主2024/4/8 20:49
#include<bits/stdc++.h>
using namespace std ;
struct pairs{
	int frist , second ;
};
pairs t[100010] ;
int ans , n , W , o ; // = 0
bool cmp(pairs a , pairs b){
	if(a.second != b.second) return a.frist < b.frist ;
	else return a.second < b.second ;  
}
int main(){
	for(int i = 1 ; i <= 100010 ; i++){
		t[i].frist = 2000 ; //初始报废优惠卷格子 
		t[i].second = -50 ;
	}
	scanf("%d" , &n) ;
	for(int i = 1 ; i <= n ; i++){
		int a , b , c ;
		scanf("%d %d %d" , &a , &b , &c) ;
		if(a == 1){
			if(o != 0){
				for(int j = 1 ; j <= o ; j++){ 
					if(t[j].frist >= b && abs(c - t[j].second) <= 45){
						W -= b ;
						t[j].frist = 2000 ; //报废优惠卷 
						t[j].second = -50 ;
						sort(t + 1 , t + n + 1 , cmp) ;
						o-- ;
						break ;
					}
				}
				W += b ;
			}else{
				W += b ;
			} 
		}else{
			W += b ;
			t[++o].frist = b ;
			t[o].second = c ;
			sort(t + 1 , t + n + 1 , cmp) ;
		}
		cout<<W<<"     "<<endl ;
	}
	printf("%d" , W) ; 
	return 0 ;
} 
2024/4/8 20:49
加载中...