博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA227 - Puzzle(紫书习题3.5)
阅读量:5086 次
发布时间:2019-06-13

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

#include 
#include
#include
#include
#include
#include
using namespace std; char maps[5][7];char cmd[1001]; int main(){ int cases = 0; while (gets(maps[0])) { if (maps[0][0] == 'Z') break; for (int i = 1 ; i < 5 ; ++ i) gets(maps[i]); int b_x = 0,b_y = 0; for (int i = 0 ; i < 5 ; ++ i) for (int j = 0 ; j < 5 ; ++ j) if (maps[i][j] == ' ') { b_x = i;b_y = j; break; } int count = 0; while (~scanf("%c",&cmd[count])) if (cmd[count] != '0') count ++; else break; cmd[count] = 0;getchar(); int flag = 0,x = b_x,y = b_y; for (int i = 0 ; cmd[i] ; ++ i) { switch(cmd[i]) { case 'A': x = b_x-1;y = b_y; break; case 'B': x = b_x+1;y = b_y; break; case 'L': x = b_x;y = b_y-1; break; case 'R': x = b_x;y = b_y+1; break; } if (x < 0 || x > 4 || y < 0 || y > 4) { flag = 1;break; }else { maps[b_x][b_y] = maps[x][y]; maps[x][y] = ' '; b_x = x; b_y = y; } } if (cases ++) printf("\n"); printf("Puzzle #%d:\n",cases); if (flag) printf("This puzzle has no final configuration.\n"); else { for (int i = 0 ; i < 5 ; ++ i) { printf("%c",maps[i][0]); for (int j = 1 ; j < 5 ; ++ j) printf(" %c",maps[i][j]); printf("\n"); } } } return 0;}

 

转载于:https://www.cnblogs.com/aerer/p/9931024.html

你可能感兴趣的文章
@Column标记持久化详细说明
查看>>
创建本地yum软件源,为本地Package安装Cloudera Manager、Cloudera Hadoop及Impala做准备...
查看>>
mysql8.0.13下载与安装图文教程
查看>>
站立会议08(冲刺2)
查看>>
url查询参数解析
查看>>
http://coolshell.cn/articles/10910.html
查看>>
[转]jsbsim基础概念
查看>>
DIV和SPAN的区别
查看>>
第一次使用cnblogs
查看>>
C#语法糖之 session操作类 asp.net
查看>>
2015 Multi-University Training Contest 3
查看>>
使用Gitblit 在windows 上部署你的Git Server
查看>>
217. Contains Duplicate
查看>>
vue2.0 关于Vue实例的生命周期
查看>>
jenkins 更换主数据目录
查看>>
Silverlight中恼人的g.i.cs错误
查看>>
SQLite 数据库增删改查
查看>>
<s:iterator>的status
查看>>
C++入门--1.0输入输出
查看>>
让搭建在Github Pages上的Hexo博客可以被Google搜索到
查看>>