网站咋做,国际网站模板,网站上添加子栏目,兴化网站建设Puzzle UVA - 227
题目传送门
注意点#xff1a;每两个输出点间有一个换行#xff0c;但最后一个输出无换行
恶心模拟题#xff0c;很卡输入输出#xff01;#xff01;#xff01;
AC代码1:(自己的代码#xff0c;提交时需要选择C11)
#include cstdio
#i…
Puzzle UVA - 227
题目传送门
注意点每两个输出点间有一个换行但最后一个输出无换行
恶心模拟题很卡输入输出
AC代码1:(自己的代码提交时需要选择C11)
#include cstdio
#include iostream
#include algorithm
#include cmath
#include cstdlib
#include cstring
#include map
#include stack
#include queue
#include vector
#include bitset
#include set
#include utility
#include sstream
#include iomanip
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define inf 0x3f3f3f3f
#define rep(i,l,r) for(int il;ir;i)
#define lep(i,l,r) for(int il;ir;i--)
#define ms(arr) memset(arr,0,sizeof(arr))
//priority_queueint,vectorint ,greaterint q;
const int maxn (int)1e5 5;
const ll mod 1e97;
char mapp[1000][1000];
bool xian(int x,int y)
{if(x0||y0||x5||y5)return false;return true;
}
int main()
{#ifndef ONLINE_JUDGEfreopen(in.txt, r, stdin);#endif//freopen(out.txt, w, stdout);ios::sync_with_stdio(0),cin.tie(0);int cnt0;while(1) {ms(mapp);gets(mapp[0]);if(mapp[0][0]Z)break;cnt;if(cnt!1) printf(\n);for(int i1;i5;i)gets(mapp[i]);int sx,sy;for(int i0;i5;i){for(int j0;j5;j){if(mapp[i][j] ){sxi;syj;}}}char c;bool jufalse;while((cgetchar())!0){if(c\n)continue;if(ju)continue;int dx,dy;switch(c){case A:{dxsx-1;dysy;if(!xian(dx,dy))jutrue;else {mapp[sx][sy]mapp[dx][dy];mapp[dx][dy] ;sxdx;sydy;break;}}case B:{dxsx1;dysy;if(!xian(dx,dy))jutrue;else {mapp[sx][sy]mapp[dx][dy];mapp[dx][dy] ;sxdx;sydy;break;}}case R:{dxsx;dysy1;if(!xian(dx,dy))jutrue;else {mapp[sx][sy]mapp[dx][dy];mapp[dx][dy] ;sxdx;sydy;break;}}case L:{dxsx;dysy-1;if(!xian(dx,dy))jutrue;else {mapp[sx][sy]mapp[dx][dy];mapp[dx][dy] ;sxdx;sydy;break;}}}}cgetchar();printf(Puzzle #%d:\n,cnt);if(ju)printf(This puzzle has no final configuration.\n);else {for(int i0;i5;i){for(int j0;j4;j){printf(%c ,mapp[i][j]);}printf(%c\n,mapp[i][4]);}}}return 0;
}AC代码2大佬的代码。。。
#include cstdio
#include iostream
#include algorithm
#include cmath
#include cstdlib
#include cstring
#include map
#include stack
#include queue
#include vector
#include bitset
#include set
#include utility
#include sstream
#include iomanip
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define inf 0x3f3f3f3f
#define rep(i,l,r) for(int il;ir;i)
#define lep(i,l,r) for(int il;ir;i--)
#define ms(arr) memset(arr,0,sizeof(arr))
//priority_queueint,vectorint ,greaterint q;
const int maxn (int)1e5 5;
const ll mod 1e97;
char block[5][5];
int x,y;
int input()
{for(int i0;i5;i) {for(int j0;j5;j) {reput:scanf(%c,block[i][j]);if(i0j0block[0][0]Z)return 1;if(block[i][j]13||block[i][j]10)goto reput;if(block[i][j]32){xi;yj;}}}return 0;
}
int move()
{char ch;int flag1;while((chgetchar())!0) {switch(ch) {case \n:continue;case A:{if(x!0) {block[x][y]block[x-1][y];block[x-1][y] ;x--;}else {flag0;}break;}case B:{if(x!4) {block[x][y]block[x1][y];block[x1][y] ;x;}else {flag0;}break;}case L:{if(y!0) {block[x][y]block[x][y-1];block[x][y-1] ;y--;} else {flag0;}break;}case R:{if(y!4) {block[x][y]block[x][y1];block[x][y1] ;y;}else {flag0;}break;}}}return flag;
}
void output(int flag)
{static int count0;count;if(count!1)printf(\n);printf(Puzzle #%d:\n,count);if(flag){for(int i0;i5;i){for(int j0;j4;j){printf(%c ,block[i][j]);}printf(%c\n,block[i][4]);}}elseprintf(This puzzle has no final configuration.\n);
}
int main()
{#ifndef ONLINE_JUDGEfreopen(in.txt, r, stdin);#endif//freopen(out.txt, w, stdout);ios::sync_with_stdio(0),cin.tie(0);for(;;){int flag1input();if(flag1)break;int flag2move();output(flag2);}return 0;
}