尴尬时刻
#include<iostream>
#include<string>
using namespace std;
int k[1001],zk;
int main(){
bool c[6];
int n,m,b2=1;
string b,a[1001];
cin>>n>>m;
zk=n*6;
for(int i=1;i<=1000;i++){
k[i]=6;
}
for(int cnt=1;cnt<=n;cnt++){
cin>>b;
a[cnt]=b;
for(int i=0;i<6;i++){
c[i]=0;
}
for(int i=0;i<6;i++){
if(b[i]=='X'){
m++;
c[i]=1;
a[cnt][i]='X';
c[5-i]=1;
a[cnt][5-i]='X';
}
}
for(int i=0;i<6;i++){
if(c[i]){
m--;
k[cnt]--;
zk--;
}
}
}
if(m<0||m%2==1||zk<m){
cout<<"Impossible";
return 0;
}
while(1){
if(m>=k[b2]){
cout<<"XXXXXX"<<endl;
m-=k[b2];
b2++;
continue;
}
break;
}
for(int i=b2;i<=n;i++){
cout<<a[i]<<endl;
}
}