POJ2488【DFS】
2024-09-08 16:03:16
阿西吧,搞清楚谁是行,谁是列啊!!!
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <algorithm>
#include <iostream>
using namespace std;
#define LL __int64
#define N 50
int d[8][2]={{-2,-1},{-2,1},{-1,-2},{-1,2},{1,-2},{1,2},{2,-1},{2,1}};
bool vis[30][30];
int xx[30];
int yy[30];
int flag;
int a,b;
void DFS(int x,int y,int num)
{
if(flag)
return;
if(num==a*b)
{
flag=1;
for(int i=1;i<=num;i++)
{
printf("%c%d",xx[i]+64,yy[i]);
}
puts("");
//printf("%d\n",num);
return;
}
for(int i=0;i<8;i++)
{
int aa=x+d[i][0];
int bb=y+d[i][1];
if(aa<1||bb<1||aa>b||bb>a||vis[bb][aa])
continue;
vis[bb][aa]=1;
xx[num+1]=aa;
yy[num+1]=bb;
DFS(aa,bb,num+1);
vis[bb][aa]=0;
}
}
int main()
{
int T;
scanf("%d",&T);
int Case=1;
for(Case=1;Case<=T;Case++)
{
scanf("%d%d",&a,&b);
printf("Scenario #%d:\n",Case);
flag=0;
memset(vis,0,sizeof(vis));
xx[1]=1;
yy[1]=1;
vis[1][1]=1;
DFS(1,1,1);
if(!flag)
{
printf("impossible\n");
}
puts("");
}
return 0;
}
/*
A1B3C1A2C1A2C1A2C1A2C1A2
A1C2A3B1D2B3C1A2C3D1B2D3
A1B3C1A2B4C2A3B1C3A4B2C4
*/
最新文章
- Delphi基本类型--枚举 子界 集合 数组
- STM32学习笔记——点亮LED
- 查询oracle数据库,返回的数据是乱码。 PL/SQL正常。
- 读取全球ip获取用户地区
- Hadoop Streaming框架使用(一)
- MVC应用程序实现上传文件
- android部分手机onclick事件触发2次
- Memcached原理
- ASP.NET Webform或者ASP.NET MVC站点部署到IIS下,默认情况下.json文件是不能被访问的,如果请求访问.json文件,则会出现找不到文件的404错误提示
- 浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
- 高级UIKit-08(TCPSocket)
- Python爬虫从入门到放弃(十五)之 Scrapy框架中Spiders用法
- eclipse导入已有工程
- SQL Server 一列或多列重复数据的查询,删除(转载)
- AVL树和平衡二叉树 平衡因子 右旋转LL 左旋转RR LR RL
- oracle问题 ORA-01843:not a valid month
- json与csv的基础用与法
- C# 读取Json配置文件
- 【代码审计】YzmCMS_PHP_v3.6 CSRF漏洞分析
- const修饰指针时应注意的问题
热门文章
- mysqldbcopy 数据库复制工具
- c程序设计语言第一章4
- 如何卸载centos中自带的Java
- Linux 用户和文件权限管理
- mtk机型的一次救砖经历
- const&; 的东西
- Android GUI系统学习1:Gralloc
- iOS 各种编译错误汇总
- 将线上服务器生成的日志信息实时导入kafka,采用agent和collector分层传输,app的数据通过thrift传给agent,agent通过avro sink将数据发给collector,collector将数据汇集后,发送给kafka
- Hadoop集群搭建-虚拟机安装(转)(一)