#include<iostream>
#include<cstring>
using namespace std;
const int N=110;
const int M=1010;
struct ball{
int dir;
int pos;
}b[N];
int n,l,t;
int pz[M];
int main(){
cin>>n>>l>>t;
for(int i=1;i<=n;i++){
int x;
cin>>x;
b[i]={1,x};
}
for(int i=1;i<=t;i++){
memset(pz,0,sizeof pz);
for(int j=1;j<=n;j++){
if(b[j].dir)b[j].pos++;
else b[j].pos--;
if(pz[b[j].pos]||b[j].pos==0||b[j].pos==l){
if(pz[b[j].pos])b[pz[b[j].pos]].dir^=1;
b[j].dir^=1;
}
else pz[b[j].pos]=j;
}
}
for(int i=1;i<=n;i++)cout<<b[i].pos<<' ';
}
碰撞的小球
最新推荐文章于 2024-04-18 19:48:42 发布