题解 | #[NOIP2002]过河卒#

[NOIP2002]过河卒

https://ac.nowcoder.com/acm/problem/16708

整体++,方便写dp。不开LL60分。


const int N = 2e2 + 21;
LL f[N][N];
int vis[N][N];
void inpfile();
void solve() {
    int n,m; cin>>n>>m;
    int tx,ty; cin>>tx>>ty;
    n++,m++,tx++,ty++;
    vector<int> fx({-1,-1,-2,-2,1,1,2,2}), fy({-2,2,1,-1,2,-2,1,-1});
    vis[tx][ty] = 1;
    for(int i = 0; i < 8; ++i) {
        int xx = tx + fx[i], yy = ty + fy[i];
        if(xx < 1 || xx > n || yy < 1 || yy > m) continue;
        vis[xx][yy] = 1;
    }
    f[1][1] = 1;
    for(int i = 1; i <= n; ++i) {
        for(int j = 1; j <= m; ++j) {
            if(vis[i][j]) f[i][j] = 0;
            else f[i][j] += f[i][j-1] + f[i-1][j];
        }
    }
    cout<<f[n][m];
}
全部评论

相关推荐

02-18 21:55
门头沟学院 Java
拍打星:谁说的,焦虑只是一种心理状态,啥都不干也可以焦虑,不如说很多人就是因为啥都不干才导致焦虑感加重
点赞 评论 收藏
分享
04-15 23:42
中山大学 Java
搞Java不如组一辈子乐队:接好运
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务