码迷,mamicode.com
首页 > 其他好文 > 详细

UVa11520 Fill the Square (字典序枚举)

时间:2016-09-11 22:44:06      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

链接:http://vjudge.net/problem/18268

分析:从上到下从左到右按字典序从小到大枚举。

 1 #include <cstdio>
 2 
 3 const int maxn = 10 + 5;
 4 
 5 int n;
 6 char grid[maxn][maxn];
 7 
 8 int main() {
 9     int T;
10     scanf("%d", &T);
11     for (int kase = 1; kase <= T; kase++) {
12         scanf("%d", &n);
13         for (int i = 0; i < n; i++) scanf("%s", grid[i]);
14         for (int i = 0; i < n; i++)
15             for (int j = 0; j < n; j++) if (grid[i][j] == .)
16                 for (char ch = A; ch <= Z; ch++) {
17                     if (i > 0 && grid[i - 1][j] == ch) continue;
18                     if (i < n - 1 && grid[i + 1][j] == ch) continue;
19                     if (j > 0 && grid[i][j - 1] == ch) continue;
20                     if (j < n - 1 && grid[i][j + 1] == ch) continue;
21                     grid[i][j] = ch; break;
22                 }
23         printf("Case %d:\n", kase);
24         for (int i = 0; i < n; i++) printf("%s\n", grid[i]);
25     }
26     return 0;
27 }

 

UVa11520 Fill the Square (字典序枚举)

标签:

原文地址:http://www.cnblogs.com/XieWeida/p/5862857.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!