求调

P1002 [NOIP2002 普及组] 过河卒

```cpp #include<bits/stdc++.h> using namespace std; long long bx,by,mx,my,x[]={0,-2,-1,1,2,-2,-1,1,2},y[]={0,-1,-2,-2,-1,1,2,2,1},dp[31][31]; bool bol; bool chi(int i,int j) { for(int k=0;k<=8;++k) if(i==mx+x[k]&&j==my+y[k]) return 0; return 1; } int main() { cin>>bx>>by>>mx>>my; dp[0][0]=chi(0,0); for(int i=1;i<=bx;++i) if(chi(i,0)) dp[i][0]=dp[i-1][0]; for(int j=1;j<=by;++j) if(chi(0,j)) dp[0][j]=dp[0][j-1]; for(int i=1;i<=bx;++i) for(int j=1;j<=by;++j) if(chi(i,j)) dp[i][j]=dp[i-1][j]+dp[i][j-1]; cout<<dp[bx][by]; } ```
by syzxzqy @ 2023-10-19 19:46:37


|