60pts求助(玄关)

P1002 [NOIP2002 普及组] 过河卒

这样,你可以先尝试写一个偏置数组,对马的移动方向进行定义,方便很多且不容易出错
by Lieyiqi @ 2023-10-03 22:27:39


https://www.luogu.com.cn/discuss/696018 当马能控制地图边界的时候边界后面的都过不去了qwq
by Herobrine6265 @ 2023-10-03 22:29:52


你被棕,@[___qwerty___](/user/1070636) 有话说
by _qwerty_ @ 2023-10-03 22:47:02


直接定义方位数组,例如: ``` int fx[20]={0,-2,-1,1,2,2,1,-1,-2}; int fy[20]={0,1,2,2,1,-1,-2,-2,-1}; ```
by huangmingyisunny1804 @ 2023-10-07 17:56:02


``` #include<bits/stdc++.h> #define int long long using namespace std; int dx[20]={0,-2,-1,1,2,2,1,-1,-2}; int dy[20]={0,1,2,2,1,-1,-2,-2,-1}; int zx,zy,mx,my; int f[45][45]; bool s[45][45]; signed main(){ cin>>zx>>zy>>mx>>my; zx+=2; zy+=2; mx+=2; my+=2; f[2][1]=1; s[mx][my]=1; for(int i=1;i<=8;i++){ s[mx+dx[i]][my+dy[i]]=1; } for(int i=2;i<=zx;i++){ for(int j=2;j<=zy;j++){ if(s[i][j]==true){ continue; } f[i][j]=f[i-1][j]+f[i][j-1]; } } cout<<f[zx][zy]; return 0; } ```
by huangmingyisunny1804 @ 2023-10-07 18:06:25


|