社区讨论
80分求助!!!
P5661[CSP-J 2019] 公交换乘参与者 3已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @lo14kvzn
- 此快照首次捕获于
- 2023/10/22 15:06 2 年前
- 此快照最后确认于
- 2023/11/02 14:38 2 年前
CPP
#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;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...