http://poj.org/problem?id=3752

这是一道我觉得还蛮有意思的题目,不难,是个水题,但我也TLE了几次,感到很奇怪,这么简单的循环还TLE,最后一想,肯定是有几个例子我是没有考虑到的

我觉得就是考你对循环的使用吧

代码写的有点长,有点琐碎

 #include <stdio.h>
#include <iostream>
#include <string.h> using namespace std; char str[][]; bool mark[][]; int main()
{
int m,n,i,j;
while(scanf("%d%d",&m,&n)!=EOF)
{
memset(mark,false,sizeof(mark));
for(i=;i<=m;i++)
for(j=;j<=n;j++) //对需要存字母的地方进行初始化,因为我的判断退出的标志是它的四周都已经有了字母,而有字母则是false,想不通的就考虑2,2这一种情况
mark[i][j]=true;
for(i=;;)
{
str[][]='A';
mark[][]=false;
if(i==)
{
for(j=;j<=n&&mark[i][j];j++)
{
if(str[i][j-]=='Z') str[i][j]='A';
else str[i][j]=str[i][j-]+;
mark[i][j]=false;
}
i++;
j--;
if(i>m) break;
}
else
{
for(;i<=m&&mark[i][j];i++)
{
if(str[i-][j]=='Z') str[i][j]='A';
else str[i][j]=str[i-][j]+;
mark[i][j]=false;
}
i--;
if(!mark[i+][j]&&!mark[i-][j]&&!mark[i][j+]&&!mark[i][j-]) break;
for(j--;j>=&&mark[i][j];j--)
{
if(str[i][j+]=='Z') str[i][j]='A';
else str[i][j]=str[i][j+]+;
mark[i][j]=false;
}
j++;
if(!mark[i+][j]&&!mark[i-][j]&&!mark[i][j+]&&!mark[i][j-]) break;
for(i--;i>=&&mark[i][j];i--)
{
if(str[i+][j]=='Z') str[i][j]='A';
else str[i][j]=str[i+][j]+;
mark[i][j]=false;
}
i++;
if(!mark[i+][j]&&!mark[i-][j]&&!mark[i][j+]&&!mark[i][j-]) break;
for(j++;j<=n&&mark[i][j];j++)
{
if(str[i][j-]=='Z') str[i][j]='A';
else str[i][j]=str[i][j-]+;
mark[i][j]=false;
}
j--;
i++;
if(!mark[i+][j]&&!mark[i-][j]&&!mark[i][j+]&&!mark[i][j-]) break;
}
}
for(i=;i<=m;i++)
{
for(j=;j<=n;j++)
printf(" %c",str[i][j]);
printf("\n");
}
}
return ;
}

POJ 3752的更多相关文章

  1. POJ 3752 字母旋转游戏

    问题描述: 给定两个整数M,N,生成一个M*N的矩阵,矩阵中元素取值为A至Z的26个字母中的一个,A在左上角,其余各数按顺时针方向旋转前进,依次递增放置,当超过26时又从A开始填充.例如,当M=5,N ...

  2. POJ 3370. Halloween treats 抽屉原理 / 鸽巢原理

    Halloween treats Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7644   Accepted: 2798 ...

  3. POJ 2356. Find a multiple 抽屉原理 / 鸽巢原理

    Find a multiple Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7192   Accepted: 3138   ...

  4. POJ 2965. The Pilots Brothers' refrigerator 枚举or爆搜or分治

    The Pilots Brothers' refrigerator Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 22286 ...

  5. POJ 1753. Flip Game 枚举or爆搜+位压缩,或者高斯消元法

    Flip Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 37427   Accepted: 16288 Descr ...

  6. POJ 3254. Corn Fields 状态压缩DP (入门级)

    Corn Fields Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 9806   Accepted: 5185 Descr ...

  7. POJ 2739. Sum of Consecutive Prime Numbers

    Sum of Consecutive Prime Numbers Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 20050 ...

  8. POJ 2255. Tree Recovery

    Tree Recovery Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11939   Accepted: 7493 De ...

  9. POJ 2752 Seek the Name, Seek the Fame [kmp]

    Seek the Name, Seek the Fame Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 17898   Ac ...

随机推荐

  1. redis+Keepalived实现Redis主从复制

    redis+Keepalived实现Redis主从复制: 环境:CentOs6.5Master: 10.10.10.203Slave:   10.10.10.204Virtural IP Addres ...

  2. Thinkphp 连接查询的使用

    方法一:使用table()方法 $tables = 'b_order ordert, b_busbid busbid'; $map['busbid.buscompanyid'] = 1; $map[' ...

  3. C# 对象 序列化 XML

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...

  4. JQuery Easy Ui 可装载组合框 - ComboBox

    可装载组合框 - ComboBox 继承自$.fn.combo.defaults,通过$.fn.combobox.defaults覆盖默认值 combobox显示的是一个可以编辑的文本框和一个下拉列表 ...

  5. Linux服务器管理: 系统的进程管理终止进程kill命令

    在Linux中如何用kill终止进程: kill -l [root@localhost~]#kill -l   可以看到kill中有很多的 常用:  -1 是重启一个进程    -9 是强制杀死进程 ...

  6. Node.SelectNodes

    http://www.crifan.com/csharp_under_some_node_search_specific_child_node/ https://msdn.microsoft.com/ ...

  7. 响应性web设计实战总结(二)

    响应性web设计实战总结(二) 阅读目录 背景知识: Gulp-less安装及配置如下 对响应性web总结,之前总结过2篇文章:可以看如下: http://www.cnblogs.com/tugenh ...

  8. OC第三节——NSArray和NSMutableArray

    1.OC数组和c数组的区别        C语言的数组:            相同类型变量的有序结合. 类型:可以是简答数据类型.构造数据类型                int     a[10 ...

  9. 微信小程序未来怎么样?听微盟卫晓祥来说说

    微信小程序宣布公测已经一个多月了,开发者一片火热,未来会怎么样?听微盟卫晓祥来说说.微盟移动营销事业部总经理卫晓祥表示,微信小程序最吸引商户的地方在于:一方面小程序作为一种全新的连接用户与服务的方式, ...

  10. 《深入浅出WPF》笔记一

    1.项目模板 Visual Studio自动配置编译器参数,并准备好一套基本的源代码. 2.App.xaml/App.xaml.cs 声明程序的进程,并指定程序的主窗体. 3.Attribute和Pr ...