博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【习题 6-4 UVA-439】Knight Moves
阅读量:5310 次
发布时间:2019-06-14

本文共 1563 字,大约阅读时间需要 5 分钟。

【链接】

【题意】

在这里输入题意

【题解】

bfs模板题

【代码】

/*    1.Shoud it use long long ?    2.Have you ever test several sample(at least therr) yourself?    3.Can you promise that the solution is right? At least,the main ideal    4.use the puts("") or putchar() or printf and such things?    5.init the used array or any value?    6.use error MAX_VALUE?    7.use scanf instead of cin/cout?*/#include 
using namespace std;#define y1 stupid_gcc#define x1 stupid_gcc2const int N = 8;string s1,s2;int x1,y1,x2,y2;int dx[8] = {1,2,2,1,-1,-2,-2,-1};int dy[8] = {-2,-1,1,2,-2,-1,1,2};int bo[N+5][N+5];queue
> dl;int main(){ #ifdef LOCAL_DEFINE freopen("F:\\c++source\\rush_in.txt", "r", stdin); #endif ios::sync_with_stdio(0),cin.tie(0); while (cin >> s1 >> s2){ x1 = s1[1]-'0',y1 = s1[0]-'a'+1; x2 = s2[1]-'0',y2 = s2[0]-'a'+1; memset(bo,255,sizeof bo); bo[x1][y1] = 0; dl.push(make_pair(x1,y1)); while (!dl.empty()){ int x = dl.front().first,y = dl.front().second; dl.pop(); for (int i = 0;i < 8;i++){ int x1 = x + dx[i],y1 = y + dy[i]; if (x1 >= 1 && x1 <= 8 && y1<= 8 && y1 >=1 && bo[x1][y1]==-1){ bo[x1][y1] = bo[x][y]+1; dl.push(make_pair(x1,y1)); } } } cout << "To get from "<
<<" to "<
<<" takes " <
<< " knight moves."<

转载于:https://www.cnblogs.com/AWCXV/p/7875220.html

你可能感兴趣的文章
Swagger简单介绍
查看>>
Python数据分析入门案例
查看>>
vue-devtools 获取到 vuex store 和 Vue 实例的?
查看>>
Linux 中【./】和【/】和【.】之间有什么区别?
查看>>
内存地址对齐
查看>>
看门狗 (监控芯片)
查看>>
css背景样式
查看>>
JavaScript介绍
查看>>
开源网络漏洞扫描软件
查看>>
yum 命令跳过特定(指定)软件包升级方法
查看>>
创新课程管理系统数据库设计心得
查看>>
Hallo wolrd!
查看>>
16下学期进度条2
查看>>
Could not resolve view with name '***' in servlet with name 'dispatcher'
查看>>
Chapter 3 Phenomenon——12
查看>>
和小哥哥一起刷洛谷(1)
查看>>
遇麻烦,Win7+Ubuntu12.10+Archlinux12.10 +grub
查看>>
SqlBulkCopy大批量导入数据
查看>>
pandas 修改指定列中所有内容
查看>>
「 Luogu P2285 」打鼹鼠
查看>>