社区讨论
蒟蒻求解
P1002[NOIP 2002 普及组] 过河卒参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @lo1cwibw
- 此快照首次捕获于
- 2023/10/22 18:59 2 年前
- 此快照最后确认于
- 2023/11/02 19:41 2 年前
这段代码
CPP#include <bits/stdc++.h>
using namespace std;
long long vis[40][40];
long long dp[40][40];
int main(){
long long n,m,x,y;
cin >> n >> m >> x >> y;
long long passx[8]={x+1,x+1,x+2,x+2,x-1,x-1,x-2,x-2};
long long passy[8]={y+2,y-2,y+1,y-1,y+2,y-2,y+1,y-1};
vis[x][y]=1;
for (int i=0;i<8;i++){
if (passx[i]>0 || passx[i]<=n+1 || passy[i]>0 || passy[i]<=m+1) vis[passx[i]][passy[i]]=1;
}
dp[0][1] = 1;
for (int i=1;i<=n+1;i++){
for (int j=1;j<=m+1;j++){
if (vis[i-1][j-1]==1) {
continue;
}
dp[i][j]=dp[i][j-1]+dp[i-1][j];
}
}
cout << dp[n+1][m+1];
}
不开O2 60分
开O2 过了是什么原理
回复
共 1 条回复,欢迎继续交流。
正在加载回复...