#include <bits/stdc++.h>
using namespace std;
int n,m;
int a[100][100];
int length(int i,int j){
int lll = 1;
for (int k = j; k < m-1; ++k) {
if(a[i][k] == a[i][k+1])
lll++;
else
break;
}
return lll;
}
int length1(int i,int j){
int lll = 1;
for (int k = i; k < n-1; ++k) {
if(a[k][j] == a[k+1][j])
lll++;
else
break;
}
return lll;
}
int main(){
cin>>n>>m;
pair<int,int>h;
set<pair<int,int>>st;
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m; ++j) {
cin>>a[i][j];
}
}
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m - 2; ++j) {
int len = length(i,j);
if(len > 2){
for (int k = j; k < j+len; ++k) {
h.first = i; h.second = k;
st.insert(h);
}
}
}
}
for (int j = 0; j < m ; ++j){
for (int i = 0; i < n - 2; ++i) {
int len = length1(i,j);
if(len > 2){
for (int k = i; k < i+len; ++k) {
h.first = k; h.second = j;
st.insert(h);
}
}
}
}
for (set<pair<int,int>>::iterator it = st.begin(); it != st.end() ; it++) {
h = *it;
a[h.first][h.second] = 0;
}
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m; ++j) {
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
csp消除类游戏
最新推荐文章于 2023-03-17 17:29:56 发布