记录编号 311324 评测结果 AAATAAAAAAAA
题目名称 售票系统 最终得分 91
用户昵称 GravatarHoohan(%Dalao) 是否通过 未通过
代码语言 C++ 运行时间 2.659 s
提交时间 2016-09-24 11:22:38 内存使用 0.50 MiB
显示代码纯文本
/*railway.cpp
**program - lwg*/
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;

int c,s,r;
int train[60005];//[i]为I和I+1之间的距离。 

int Q_read() {
	int ans = 0;
	char c = 0;
	while(c < '0' || c > '9') c = getchar();
	while(c >= '0' && c <= '9') {
		ans *= 10;
		ans += c-'0';
		c = getchar();
	}
	return ans;
}

void init()
{
	for(register int i=0;i<=c;i++)
	{	
		train[i]=s;
	}
}

int find_min(int begin,int end)
{
	int maxs=65000;
	for(register int i=begin;i<end;i++)
	{
		if(train[i]<maxs) maxs=train[i];
	}
	return maxs;
}

void clear(int begin,int end,int need)
{
	for(register int i=begin;i<end;i++)
	{
		train[i]-=need;
	}
}

int aj(int begin,int end,int need)
{
	int now=find_min(begin,end);
	if(now<need) 
	{
		putchar('N');putchar('O');putchar('\n');
	}
	else
	{
		clear(begin,end,need);
		putchar('Y');putchar('E');putchar('S');putchar('\n');
	}
}

int main()
{
	freopen("railway.in","r",stdin);
	freopen("railway.out","w",stdout);
	//scanf("%d%d%d",&c,&s,&r);
	c=Q_read();s=Q_read();r=Q_read();
	init();
	int begin,end,need;
	for(register int i=0;i<r;i++)
	{
		//scanf("%d%d%d",&begin,&end,&need);
		begin=Q_read();end=Q_read();need=Q_read();
		aj(begin,end,need);
	}
	return 0;
}