标签:
今天的B题
我是想爆出来的,当时想的不错,但后来发现这样爆行不通
前面的*点就不是最优了
但是我环视要存起来
#include<bits/stdc++.h> using namespace std; int n,m; char S[60][60]; int IDd[60][60]; int IDd2[60][60]; void dfs(int r,int c,int id) { // printf("r%d c%d\n",r,c); if(r<0||r>=n||c<0||c>=m) { return ; } if(IDd[r][c]>0 || S[r][c]=='#') { return ; } IDd[r][c]=id; dfs(r,c+1,id); dfs(r,c-1,id); dfs(r-1,c,id); dfs(r+1,c,id); } void FULL(int i,int j) { IDd2[i][j]=30000; int I=i,J=j; I--; while(I>=0){ if(IDd[I][J]==1) break; IDd2[I][J]=30000; I--; } I=i,J=j; I++; while(I<n){ if(IDd[I][J]==1) break; IDd2[I][J]=30000; I++; } I=i,J=j; J--; while(J>=0){ if(IDd[I][J]==1) break; IDd2[I][J]=30000; J--; } I=i,J=j; J++; while(J<=m){ if(IDd[I][J]==1) break; IDd2[I][J]=30000; J++; } } int main() { ios::sync_with_stdio(false); int cases; scanf("%d",&cases); while(cases--){ memset(IDd,0,sizeof(IDd)); memset(IDd2,0,sizeof(IDd2)); memset(S,0,sizeof(S)); scanf("%d%d",&n,&m); for(int i=0;i<n;i++) scanf("%s",S[i]); int cnt=0; for(int i=0;i<n;i++) for(int j=0;j<m;j++){ if(S[i][j]=='#'){ IDd[i][j]=1; } } // for(int i=0;i<n;i++){ // for(int j=0;j<m;j++) // printf("%d ",IDd[i][j]); // printf("\n"); // } int minn=0; for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ int get1=0; if(S[i][j]=='*'){ get1++; FULL(i,j); for(int i=0;i<n;i++){ for(int j=0;j<m;j++) printf("%d ",IDd2[i][j]); printf("\n"); } for(int k=0;k<n;k++) for(int l=0;l<m;l++){ if(S[k][l]=='*'&&IDd2[k][l]!=30000){ get1++; FULL(k,l); for(int i=0;i<n;i++){ for(int j=0;j<m;j++) printf("%d ",IDd2[i][j]); printf("\n"); } } } // for(int k=0;k<n;k++){ // for(int l=0;l<m;l++){ // printf("%d ",IDd2[k][l]); // } // printf("\n"); // } minn = max(get1,minn); memset(IDd2,0,sizeof(IDd2)); } } } printf("%d\n",minn); for(int i=0;i<n;i++){ for(int j=0;j<m;j++) printf("%d ",IDd2[i][j]); printf("\n"); } } /* 100 2 4 #*#o *o** */ return 0; } /**************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** **************************************************************************************************** ****************************************************************************************************/
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/a197p/article/details/47322287