为什么俩RE
查看原帖
为什么俩RE
1048576
New_Void楼主2024/11/25 20:59
#include <iostream>
using namespace std;
long long dp[30][30];
long long f[30][30];
int main(){
    long long n,m,x,y;
    cin>>n>>m>>x>>y;
    dp[0][0]=1;
    f[x-1][y-2]=1000000;
    f[x+1][y-2]=1000000;
    f[x-1][y+2]=1000000;
    f[x+1][y+2]=1000000;
    f[x-2][y-1]=1000000;
    f[x+2][y-1]=1000000;
    f[x-2][y+1]=1000000;
    f[x+2][y+1]=1000000;
    f[x][y]=1000000;
    for (int i=0;i<=n;i++){
        for (int j=0;j<=m;j++){
            if (i==0 && j==0){
                continue;
            }
            if (f[i][j]==1000000){
                continue;
            }
            if (i-1<0){
                dp[i][j]=dp[i][j-1];
            }
            else if (j-1<0){
               dp[i][j]=dp[i-1][j];
            }
            else{
                if (dp[i][j]!=0){
                    continue;
                }
                dp[i][j]=dp[i-1][j]+dp[i][j-1];
            }
        }
    }
    cout<<dp[n][m];
    return 0;
}
2024/11/25 20:59
加载中...