阳历正确67pts求调
查看原帖
阳历正确67pts求调
766022
__pipi__楼主2024/9/30 22:29
#include <bits/stdc++.h>
#define ll long long
#define ii inline
#define ull unsigned long long
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
using namespace std;
const int N=1e3+10;
const int mod=100003;
const int inf=-1e9;

ll n,m;
char mymap[N][N];
ll ans;

void ee() {
	for(int i=1;i<=n;i++) {
		for(int j=1;j<=6;j++) cout<<mymap[i][j];
		cout<<endl;
	}
}
int main() {
	IOS;
	cin>>n>>m;
	for(int i=1;i<=n;i++) {
		for(int j=1;j<=6;j++) {
			cin>>mymap[i][j];
		}
	}
	if(!m) {
		ee();
		return 0;
	}
	for(int i=1;i<=n;i++) {
		for(int j=1;j<=6;j++) {
			if(mymap[i][j]=='.') {
				ans++;
			}
		}
	}
	if(ans<m) {
		cout<<"Impossible";
		return 0;
	}
	
	for(int i=1;i<=n;i++) {
		for(int j=1;j<=6;j++) {
			if(mymap[i][j]=='X'&&mymap[i][6-j+1]=='.') {
				mymap[i][6-j+1]='X';
				m--;
			}
		}
	}
	
	if(m<0||m%2==1) {
		cout<<"Impossible";
		return 0;
	}
	
	bool b=0;
	for(int i=1;i<=n;i++) {
		if(b==1) break;
		for(int j=1;j<=6;j++) {
			if(!m) {
				b=1;
				break;
			}
			if(mymap[i][j]=='.'&&mymap[i][6-j+1]=='.') {
				mymap[i][6-j+1]='X';
				mymap[i][j]='X';
				m-=2;
			}
		}
	}
	
	if(m) cout<<"Impossible";
	else ee();
	return 0;
} 
2024/9/30 22:29
加载中...