UVa 227 Puzzle(谜题)
来源:互联网 发布:linux组织文件目录结构 编辑:程序博客网 时间:2024/04/18 23:20
#include <stdio.h>#include <stdlib.h>#include <string.h>char map[6][7];int blanx,blany;//空格处int change(char ch){ if(ch=='A'){ if(blanx==1) return 0; map[blanx][blany]=map[blanx-1][blany]; map[blanx-1][blany]=' '; blanx=blanx-1; } else if(ch=='B'){ if(blanx==5) return 0; map[blanx][blany]=map[blanx+1][blany]; map[blanx+1][blany]=' '; blanx=blanx+1; } else if(ch=='L'){ if(blany==1) return 0; map[blanx][blany]=map[blanx][blany-1]; map[blanx][blany-1]=' '; blany=blany-1; } else if(ch=='R'){ if(blany==5) return 0; map[blanx][blany]=map[blanx][blany+1]; map[blanx][blany+1]=' '; blany=blany+1; } else return 0; return 1;}int main(){ int count=0; int getre; while(gets(map[1]+1)!=EOF){ count++; getre=1; if(map[1][1]=='Z') break; for(int i=2;i<=5;i++) gets(map[i]+1); for(int i=1;i<=5;i++) for(int j=1;j<=5;j++){ if(map[i][j]==' '){ blanx=i; blany=j; break; } } char ch; while((ch=getchar())!='0'){ if(ch!='\n'&&ch!=' '&&ch!='\r'&&getre) getre=change(ch); } getchar(); if(count>1) printf("%c",'\n'); printf("Puzzle #%d:\n",count); if(getre==0) printf("This puzzle has no final configuration.\n"); else{ for(int i=1;i<=5;i++){ for(int j=1;j<=5;j++) printf("%c%c",map[i][j],j==5?'\n':' '); } } } return 0;}
1 0
- UVa 227 Puzzle(谜题)
- UVa 227 Puzzle(谜题)
- 谜题(Puzzle, UVa 227)算法
- UVa 227 - Puzzle
- UVa 227 - Puzzle
- Uva-227-Puzzle
- UVa 227 Puzzle
- UVA - 227 Puzzle
- Uva-227 - Puzzle-AC
- UVa 227 - Puzzle
- UVa-227 - Puzzle
- 【Uva 227】 Puzzle
- UVa 227 - Puzzle
- UVa 227 Puzzle
- UVA - 227 Puzzle
- Uva - 227 - Puzzle
- UVA - 227 Puzzle
- UVa 227 Puzzle
- hdu 2642 stars
- AIDL详解
- Retrofit的初步使用
- 【c++】构建一棵简单的二叉树
- 蓝牙之十六-测试认证
- UVa 227 Puzzle(谜题)
- Java实现快速,选择,希尔,归并排序算法
- LeetCode 199.Binary Tree Right Side View
- web文章收录
- 【转载】C#操作Access类
- 新建webservice项目时,在target runtime中找不到apache(已经安装过了),只有basic
- 扫描线
- ***P381(动作监听事件ActionListener接口)
- Git学习