比赛 |
20160707 |
评测结果 |
AAWAAWWWWW |
题目名称 |
苳岑学姐の超电磁炮 |
最终得分 |
40 |
用户昵称 |
Arrow |
运行时间 |
0.082 s |
代码语言 |
C++ |
内存使用 |
0.33 MiB |
提交时间 |
2016-07-07 16:19:50 |
显示代码纯文本
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin("dcball.in");
ofstream fout("dcball.out");
int n,m,l;
int t[100]={0};
struct ball{
int pos;
int dec;
}b[1500];
void roll(int x){
ball a[1500];
int c;
for(int i=0;i<n;i++){
a[i].pos=b[i].pos;
a[i].dec=b[i].dec;
if(a[i].dec==0)
a[i].pos+=x;
else a[i].pos-=x;
}
for(int i=0;i<n;i++){
if((a[i].pos<a[i+1].pos&&b[i].pos>b[i+1].pos)||(a[i].pos>a[i+1].pos&&b[i].pos<b[i+1].pos)){
c=a[i].pos;
a[i].pos=a[i+1].pos;
a[i+1].pos=c;
}
}
for(int i=0;i<n;i++){
if(a[i].pos<=0||a[i].pos>l)
fout<<"fire in the hole"<<' ';
else fout<<a[i].pos<<' ';
}
}
int main()
{
fin>>n;fin>>l;
for(int i=0;i<n;i++){
fin>>b[i].pos;
fin>>b[i].dec;
}
fin>>m;
for(int i=0;i<m;i++){
fin>>t[i];
roll(t[i]);
fout<<endl;
}
fin.close();
fout.close();
return 0;
}