比赛 |
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;
}