Cashier (codeforces 1059A)

题目倒是不难注意第一个时间段可能不是从零开始的,所以注意第一个时间的开始节点与零之间可能存在休息的时间

还有这个题我打的时候一直谜之RE。。。。。。发现原来bool函数忘记写return了。。。。。以后一定主函数也写上,return 0;也写上

#include <bits/stdc++.h>
using namespace std;
struct node
{
	int l,coss;
}p[1000100];
bool cmp(node aa,node bb)
{
	return aa.l<bb.l;
}
main()
{
	memset(p,0,sizeof(p));
	ios_base::sync_with_stdio(0);
	cin.tie(NULL);
	int n,L,a;
	cin>>n>>L>>a;
	for(int i=0;i<n;i++)
	cin>>p[i].l>>p[i].coss;
	//sort(p,p+n,cmp);
	int ans=0;
	ans+=p[0].l/a;
	for(int i=0;i<n-1;i++)
	{
		if(p[i].l+p[i].coss<p[i+1].l)
		ans+=(p[i+1].l-p[i].coss-p[i].l)/a;
	}
	if(n!=0)
	ans+=(L-p[n-1].l-p[n-1].coss)/a;
	else
	ans+=L/a;
	cout<<ans;	
} 
posted @ 2018-10-06 10:20  baccano!  阅读(321)  评论(0编辑  收藏  举报