求助!!!
怎么调都过不了
样例也才过了一个
但我这个蒟蒻怎么也找不出来哪错了
代码如下:
#include<bits/stdc++.h>
using namespace std;
const int maxn=100005;
int n,cost,m0,m1,h=1;
struct node
{
int prize,time,use;
}sub[maxn],bus[maxn];
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
int x;scanf("%d",&x);
if(x==0)
{
m0++;
scanf("%d%d",&sub[m0].prize,&sub[m0].time);
cost+=sub[m0].prize;
sub[m0].use=-1;
}
else
{
m1++;
scanf("%d%d",&bus[m1].prize,&bus[m1].time);
bus[m1].use=-1;
}
}
for(int i=1;i<=m1;i++)
{
for(int j=h;j<=m0;j++)
{
if((sub[j].use==-1)&&(bus[i].time-sub[j].time<=45))
{
sub[j].use=1;
if(sub[j].prize>=bus[i].prize)
{
bus[i].use=1;
h=j+1;
break;
}
}
}
if(bus[i].use==-1)
{
cost+=bus[i].prize;
}
}
printf("%d",cost);
return 0;
}
markdown真难用