文章
34
粉丝
329
获赞
1
访问
281.3k
#include <stdio.h>
#include <stdlib.h>
struct station
{
int A;
int B;
int num;
}a[20];
int main()
{
int n,m;
scanf("%d%d",&n,&m);
int i,j,t,w,e,y;
for(i=0;i<n;i++)
{
scanf("%d%d%d",&a[i].A,&a[i].B,&a[i].num);
}
for(i=0;i<n;i++)
{
if(i==0)
{
if(a[i].num<m)printf("1\n");
else {printf("0\n");a[i].num=0; }//如果不行,要直接注销为零,这样不影响后面比较。
}
if(i>0)
{ w=e=i;
t=a[w].num;
y=1;
for(j=0;j<e;j++)//因为之后,每一次都要和前面所有比较,所以有i次循环(e=i)
{
if(a[w].A<=a[w-y].B&&a[w].A>=a[w-y].A||a[w].B<=a[w-y].B&&a[w].B>=a[w-y].A)
{
t=t+a[w-1].num;
w--;
}
else y++;
}
if(t>m){printf("0\n");a[e].num=0; }
if(t<=m) printf("1\n");
}
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发