P5661 CSP-J2019 公交换乘0分求调
  • 板块灌水区
  • 楼主_papaya
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/10/1 19:16
  • 上次更新2024/10/1 21:35:40
查看原帖
P5661 CSP-J2019 公交换乘0分求调
682421
_papaya楼主2024/10/1 19:16
#include <bits/stdc++.h>
using namespace std;

struct Node{
    int price,time,vis;
}a[200005];

int main(){
    int sob,price,time;
    int s,w,n,sum=0;
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%d%d%d",&sob,&price,&time);
        a[i].vis=0;
        if(sob==0){
            sum+=price;
            a[w].time=time+45;
            a[w++].price=price;
        } 
		else{
            while(s<w&&a[s].time<time){
                s++;
            }
			int cnt=0;
            for (int j=s;j<w;j++){
                if(a[j].price>=price&&a[j].vis==0) {
                    a[j].vis=1;
                    cnt++;
                    break;
                }
            }
            if(cnt==0){
				sum+=price;
        	}
        }
    }
    printf("%d\n",sum);
    return 0;
}
2024/10/1 19:16
加载中...