走方格
(https://www.luogu.com.cn/problem/P8707)
理解一下题目
1.行和列都是偶数的时候不能走,问有多少种到达终点的方法
看到题目的一瞬间,第一时间想到广搜,结果t了~悲伤~。
再瞅瞅数据范围1-30,~不t才怪~
回来再想想
他每次能走的路只能从上边或者左边过来,那么dp直接走
代码方法如下
dp[1][1] = 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
if(i == 1 && j == 1)continue;
if(i & 1)dp[i][j] = dp[i-1][j]+dp[i][j-1];
else if(j & 1)dp[i][j] = dp[i-1][j]+dp[i][j-1];
}
}