您的位置:首页 > 其它

uvaoj 11520 - Fill the Square

2015-11-03 09:44 344 查看
题解:贪心

总结:这几天写作业,用cmake 将vtk源代码生成sln,然后用vs编译,总是出现一些小问题,问了同学才解决的。但是这个问题我感觉并不是特别难的问题,可以通过自己的能力把它解决点,关键在于需要(即使是第一次使用的不熟悉的软件)将软件的每一步的操作选项看清楚,简单的记下来,不要急忙的一直下一步,导致出错都不知道怎么办,只能上网盲目的搜索。

依旧是那句话,切记,思考的debug强于盲目的乱试,包括上网瞎找

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define MAXN 12
char ch[MAXN][MAXN];
int main()
{
int _,n;
cin >> _;
for(int kcas = 1;kcas <= _;kcas++)
{
cin >> n;
for(int i = 0; i < n; i++)
scanf("%s", ch[i]);
for(int i = 0;i < n;i++)
for(int j = 0;j < n;j++)if(ch[i][j] == '.')
for(char k = 'A';k <= 'Z';k++)
{
bool ok = true;
if(i - 1 >= 0 && ch[i - 1][j] == k)ok = false;
if(j - 1 >= 0 && ch[i][j - 1] == k)ok = false;
if(i + 1 < n && ch[i + 1][j] == k)ok = false;
if(j + 1 < n && ch[i][j + 1] == k)ok = false;
if(ok)
{
ch[i][j] = k;
break;
}
}
printf("Case %d:\n", kcas);
for(int i = 0;i < n;i++)
printf("%s\n", ch[i]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息