题目描述
国际象棋黑鸦可以水平或垂直移动到棋盘同一行或同一列中的任何正方形。找出黑鸦可以从棋盘的一角移动到对角线相对角的最短路径数。
输入
a interger number n is row and column of chessboard. 0 < n <=16
输出
the number of shortest paths.
样例输入
4样例输出
20
#include<stdio.h> int dp[100][100]; int shortest(int n) { int i, j; for (i = 1; i < n; i++) { for (j = 1; j < n; j++) { dp[i][0] = 1; dp[0][j] = 1; dp[i][j] = dp[i - 1][j] + dp[i][j - 1]; } } return dp[n - 1][n - 1]; } int main() { int n; scanf("%d", &n); printf("%d\n", shortest(n)); return 0; }
SWUST OJ577:最短路径计数
最新推荐文章于 2024-05-16 20:48:59 发布