比赛 20150422 评测结果 TTTTTTTTTTT
题目名称 背驮式行走 最终得分 0
用户昵称 落尘 运行时间 11.000 s
代码语言 C++ 内存使用 1.84 MiB
提交时间 2015-04-22 11:49:52
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <set>
#define MAXN 100001
using namespace std;

set<unsigned long long int> coll;
unsigned long long int n,T;

struct cow{
	unsigned long long int speed;
	unsigned long long int place;
}p[MAXN];

int qread()
{
	int num=0;
	char a;
	a=getchar();
	while(a<'0' || a>'9')
		a=getchar();
	while(a>='0' && a<='9')
	{
		num=num*10+a-'0';
		a=getchar();
	}
	return num;
}

void init()
{
	n=qread();
	T=qread();
	for(int i=1;i<=n;++i)
	{
		p[i].place=qread();
		p[i].speed=qread();
	}
}

void work()
{
	while(--T)
	{
		for(int i=n;i>=1;--i)
		{
			p[i].place+=p[i].speed;
			if(p[i].place>p[i-1].place)
			{
				p[i].place=p[i-1].place;
				p[i].speed=p[i].speed;
			}
		}
	}
	
	for(int i=1;i<=n;++i)
		coll.insert(p[i].place);
	printf("%d\n",coll.size());
}

int main()
{
	freopen("cowjoga.in","r",stdin);
	freopen("cowjoga.out","w",stdout);
	
	init();
	work();
	
	fclose(stdin);
	fclose(stdout);
	return 0;
}