记录编号 |
278243 |
评测结果 |
AAWAAWWTTT |
题目名称 |
苳岑学姐の超电磁炮 |
最终得分 |
40 |
用户昵称 |
Riolu |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
3.679 s |
提交时间 |
2016-07-07 16:41:43 |
内存使用 |
0.32 MiB |
显示代码纯文本
/*=========================================*
* Auther: Riolu
* PID:2374
* Time: 2016.7.7
* Copyright 2016 Riolu. All Rights Reserved.
*=========================================*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
#include<ctime>
using namespace std;
/*=========DEFINE============================*/
int n,l,m,t;
struct note{
int x,y,z;
}b[1600];
struct note2{
int wz,x,z;
}tb[1600];
int tx[1600];
/*==========================================*/
int cmp(note2 a,note2 b){
return a.x<b.z;
}
void read(){
freopen("dcball.in","r",stdin);
freopen("dcball.out","w",stdout);
}
/*=========MAIN==============================*/
int main(){
read();
cin>>n>>l;
int i,j,k;
for(i=1;i<=n;i++)
scanf("%d%d",&b[i].x,&b[i].y);
cin>>m;
for(i=1;i<=m;i++){
scanf("%d",&t);
for(j=1;j<=n;j++){
if(b[j].y==1)b[j].z=b[j].x-t;
else b[j].z=b[j].x+t;
}
for(j=1;j<=n;j++){
int s=0;
for(k=1;k<=n;k++)tb[k].x=tb[k].z=tx[k]=tb[k].wz=0;
tx[++s]=b[j].z;tb[s].wz=j;tb[s].x=b[j].x;tb[s].z=b[j].z;
for(k=1;k<=n;k++){
if(b[k].y!=b[j].y)
if(b[k].y==1&&b[k].x-b[j].x>0&&b[k].x-b[j].x<2*t)//xiang jiao
{tx[++s]=b[k].z;tb[s].x=b[k].x;tb[s].z=b[k].z;}
}
sort(tx+1,tx+1+s);
sort(tb+1,tb+1+s,cmp);
for(k=1;k<=s;k++){
b[tb[k].wz].z=tx[k];
}
}
for(j=1;j<=n;j++){
k=b[j].z;
if(k<1||k>l)cout<<"fire in the hole ";
else cout<<k<<' ';
}cout<<endl;
}
//cout<<clock()<<endl;
return 0;
}