社区讨论
50求条,帮助回关
P5661[CSP-J 2019] 公交换乘参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mbulrxme
- 此快照首次捕获于
- 2025/06/13 17:26 9 个月前
- 此快照最后确认于
- 2025/11/04 07:12 4 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
long long n,sum,mon,z=1//开头;
struct t{
int pri,time;
};
int main(){
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
cin>>n;
t tic[n];
for(int i=1;i<=n;i++){
int type,price,Time;
cin>>type>>price>>Time;
if(!type){
tic[++sum].pri=price;
tic[sum].time=Time+45;
mon+=price;
}//存票
else{
mon+=price;
for(int k=z;tic[k].time<Time;k++){
tic[k].pri=-1;
z=k;//本来应该是z=k+1,但是怎么写全wa了不知道为什么,所以说让z往前了1
}//扔票
for(int j=z;j<=sum;j++){
if(tic[j].pri<0)continue;
if(tic[j].pri>=price && tic[j].time>=Time){
if(j==z) z+=1;
tic[j].pri=-1;
mon-=price;
// cout<<"使用第"<<j<<"条优惠券"<<endl;
break;
}
}//扫票
}
}
// for(int i=1;i<=sum;i++){
// cout<<tic[i].pri<<" "<<tic[i].time<<endl;
// }
cout<<mon;
return 0;
}
//
回复
共 2 条回复,欢迎继续交流。
正在加载回复...