Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
180603 C班 黄一航 骑士遍历1 C++ 运行超时 1 1000 MS 504 KB 576 2024-08-21 16:28:30

Tests(1/55):


#include<bits/stdc++.h> using namespace std; int fx[]={-2,-1,1,2}; int fy[]={1,2,2,1}; int a,b; int k[10001]; bool f=false; bool vis[10001][10001]; void dfs(int x,int y,int step,int fangwei){ if(vis[x][y]) return; if(x<1||y<1||x>a||y>b) return; if(fangwei) k[step]=fangwei; vis[x][y]=1; if(x==a&&y==b){ if(!f) for(int i=2;i<=step;i++) cout << k[i] << " "; f=true; return; } for(int i=0;i<4;i++){ dfs(x+fx[i],y+fy[i],step+1,i+1); } vis[x][y]=0; return; } int main(){ cin >> b >> a; dfs(1,1,1,0); if(!f) cout << -1; return 0; }


测评信息: