hrbust 1944 皮卡丘

来源:互联网 发布:fifa online3新数据库 编辑:程序博客网 时间:2024/04/30 02:54

皮卡丘Time Limit: 1000 MSMemory Limit: 32768 KTotal Submit: 109(63 users)Total Accepted: 64(59 users)Rating: Special Judge: NoDescription

一根长度为L米的桥上有n只可爱的皮卡丘,每只皮卡丘要么朝左走,要么朝右走,初始速度为1m/s。当两只皮卡丘相撞时,二者同时掉头。我们认为桥是独木桥很窄,窄到皮卡丘多宽桥多宽,相撞时2只皮卡丘处于相同的位置,且掉头不花费时间。给出每只皮卡丘的初始位置和朝向,计算T秒之后仍在桥上的皮卡丘们的位置。

Input

多组输入数据。

每组数据第一行为3个整数,L,T,n(0<L,T,n<=1000)。

以下n行每行描述一只皮卡丘的初始位置,其中,整数x(0<x<L)为皮卡丘距离桥的左端的距离,整数y为初始方向:1为往右,-1为往左。

Output

对于每组数据,输出一行,按从左到右的顺序输出T秒后仍在桥上的皮卡丘的位置,每2只皮卡丘之间用空格隔开(不计方向)。

Sample Input
10 1 41 15 13 -110 1
Sample Output
2 2 6

其实 掉不掉头有什么区别吗。。。

最后不还是两个小皮卡丘走的吗。。。

#include<stdio.h>#include<algorithm>using namespace std;int a[1004];int main(){    int l,t,n;    while(~scanf("%d%d%d" ,&l,&t,&n))    {        int cnt=0;        for(int i=1;i<=n;i++)        {            int x,y;            scanf("%d%d",&x,&y);            x+=(y*t);            if(x>l||x<0)continue;            else a[cnt++]=x;        }        sort(a,a+cnt);        for(int i=0;i<cnt;i++)        {            if(i)printf(" ");            printf("%d",a[i]);        }        printf("\n");    }}



原创粉丝点击