15求调
查看原帖
15求调
1192488
maozhangzhang楼主2024/11/24 12:12
#include<bits/stdc++.h>
using namespace std;
char a[1100][1100];
int n,m;
int main() {
	cin >> n >> m ;
	for(int i = 1 ; i<= n ;i++){
		for(int j=1;j<=m;j++){
			cin >> a[i][j] ;
		}
	}
	for(int i=1;i<=n;i++){
		int cnta=0 , cntb=0 , cnth=0,ph=0;
		for(int j=1;j<=m;j++){
			if(a[i][j]=='A'){
				cnta++;
			}
			if(a[i][j]=='B'){
				cntb++;
			}
			if(a[i][j]=='H')cnth++; 
		}
		if(cnth==0){
			if(cnta>cntb){
				cntb=0;
				for(int k = m ;k>=m-cnta+1;k--){
					a[i][k]=='A';
				}
			}
			else if(cntb>cnta){
				cnta=0; 
				for(int k = 1 ;k<=cntb;k++){
					a[i][k]=='B';
				}
			}
		}
		else{
			for(int k = 1 ;k<=cnta;k++){
					a[i][k]=='A';
			}
			for(int k = m ;k>=m-cntb+1;k--){
					a[i][k]=='B';
			}
		}
	}
	for(int i = 1 ; i <= n ; i++){
		for(int j = 1 ; j<=m;j++){
			if(a[i][j]=='A'||a[i][j]=='B'){
				if(a[i][j]==a[i-1][j]||a[i][j]==a[i+1][j+1]){
					cout << '#' ;
				}
				else{
					cout << a[i][j];
				}
			}
			else{
				cout << a[i][j];
			} 
		}
		cout << endl ;
	}
	return 0 ;
}
2024/11/24 12:12
加载中...