2008 北京区域赛 Ugly Windows
2012-06-13 14:13
218 查看
/* 题目: 找到所有在上面的窗口,窗口的大小最小高度和宽度均为3。 分析: 通过搜索找到左上右下的坐标,然后再判断边上或里面是否有其他的字母,另外 注意由于窗口的大小最小为3*3。由于最大为100*100,O(n^3)暴搜算法即可 注意细节: 6 10 .......... .AAAAAAAA. .A.BBB..A. .A.B.B..A. .A.BBB..A. .AAAAAAAA. */ #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int X = 105; char map[X][X]; int n,m; int use[27]; struct point { int x,y; }; bool bfs(int x,int y,char a) { use[a-'A'] = 1; point lt,rb; lt.x = x; lt.y = y; rb.x = x; rb.y = y; for(int i=x;i<n;i++) //找到左上右下的坐标 for(int j=y;j<m;j++) if(map[i][j]==a) { lt.x = min(lt.x,i); lt.y = min(lt.y,j); rb.x = max(rb.x,i); rb.y = max(rb.y,j); } if(rb.x-lt.x<2||rb.y-lt.y<2) //大小不符 return false; for(int i=lt.x;i<=rb.x;i++) //判断边上是否全为该字母 if(map[i][y]!=a||map[i][rb.y]!=a) return false; for(int i=lt.y;i<=rb.y;i++) if(map[lt.x][i]!=a||map[rb.x][i]!=a) return false; for(int i=lt.x+1;i<rb.x;i++) //判断里面是否有其他的窗口 for(int j=lt.y+1;j<rb.y;j++) if(map[i][j]!='.') return false; return true; } int main() { freopen("sum.in","r",stdin); freopen("sum.out","w",stdout); while(scanf("%d%d",&n,&m),n||m) { if(n<3||m<3) { printf("1\n"); continue; } for(int i=0;i<n;i++) scanf("%s",map[i]); memset(use,0,sizeof(use)); for(int i=0;i<n;i++) for(int j=0;j<m;j++) if(map[i][j]!='.'&&!use[map[i][j]-'A']) if(bfs(i,j,map[i][j])) use[map[i][j]-'A'] = 2; for(int i=0;i<26;i++) if(use[i]==2) printf("%c",(char)('A'+i)); printf("\n"); } return 0; }
相关文章推荐
- 2008 北京区域赛 Minimal Ratio Tree
- 2008 北京区域赛 Priest John's Busiest Day
- LA 4329 Ping Pong 2008 北京区域赛 H , BIT 二叉索引树(树状数组)的应用
- LA 4329 Ping Pong 2008 北京区域赛 H , BIT 二叉索引树(树状数组)的应用
- LA 4329 Ping Pong 2008 北京区域赛 H , BIT 二叉索引树(树状数组)的应用
- 2008 北京区域赛 ping pong // icpc 4329 ping pong
- 2017 北京区域赛 J题
- HDUOJ----2485 Destroying the bus stations(2008北京现场赛A题)
- 2011年北京区域赛I-Activation
- 北京将评估特定时段特定区域机动车单双号限行-单双号-限行
- 2015 北京区域赛 Today Is a Rainy Day(暴搜)
- 2017 北京区域赛 J题
- hihocoder 1636(2017北京区域赛J)(区间dp)
- windows 2008中使用GlobalNames区域 推荐
- 2014年北京、广州区域赛总结
- HDU 4089 Activation 概率DP 2011年区域赛北京现场赛I题
- 2008北京第29届奥运会总奖牌榜
- hihocoder 1257 Snake Carpet 2015 ACM_ICPC 北京区域赛 I 题
- 2011年 北京区域赛A题 Qin Shi Huang's National Road System // hdu 4081 Qin Shi Huang's National Road System 最优比率生成树
- 2008 北京 凌佳 ~ !