help帮忙看一下

P1002 [NOIP2002 普及组] 过河卒

# 下一个 ```cpp #include<iostream> using namespace std; bool a[21][21]; unsigned long long sum[21][21]; int x[]={0,1,1,2,2,-1,-1,-2,-2}; int y[]={0,2,-2,1,-1,2,-2,1,-1}; int manx,many; int bx,by; int main() { cin>>bx>>by; cin>>manx>>many; for(int i=0;i<=8;i++){ if(manx+x[i]<0||manx+x[i]>20||many+y[i]<0||many+y[i]>20)continue; a[manx+x[i]][many+y[i]]=true; } sum[0][0]=1; for(int i=0;i<=bx;i++){ for(int k=0;k<=by;k++){ if(!a[i][k])continue; else sum[i][k]=sum[i-1][k]+sum[i][k-1]; } } cout<<sum[bx][by]; return 0; } ```
by int树先生 @ 2020-01-14 22:41:56


@[int树先生](/user/197457) 你走马的时候把带马的格子设成true,为什么后边确是!a[i][j]?
by KellyFrog @ 2020-01-15 06:43:50


@[int树先生](/user/197457) 还有你这个i=0的时候i-1成负数了,会re的
by KellyFrog @ 2020-01-15 06:45:16


`line 18,line 19` : from `1` to `bx` from `1` to `by` `line 20` : ```cpp if(a[i][k])continue; ```
by littlefrog @ 2020-01-16 11:45:27


|