9 条题解
-
2
#include<iostream> #include<string> #include<algorithm> #define ll long long using namespace std; const int fx[] = { 0,-2,-1,1,2,2,1,-1,-2 }; const int fy[] = { 0,1,2,2,1,-1,-2,-2,-1 }; //马可以走到的位置 int bx, by, nx, my; ll lj[40][40]; bool s[40][40];//判断这个点能不能走 int main() { //c scanf输入数据 printf输出数据 cin >> bx >> by >> nx >> my; bx += 2; by += 2; nx += 2; my += 2; lj[1][2] = 1;//初始化让lj[2][2]=1; s[nx][my] = 1; for (int i = 1; i <= 8; i++) { s[nx + fx[i]][my + fy[i]] = 1; } for(int i=2;i<=bx;i++) for (int j = 2; j <=by; j++) { if (s[i][j]) { continue;//lj[i][j] = 0; } lj[i][j] = lj[i - 1][j] + lj[i][j - 1]; } cout << lj[bx][by] << endl; //return 0; } // // __ __ __ // / / / /_ ______/ /________ // / /_/ / / / / __ / ___/ __ \ // / __ / /_/ / /_/ / / / /_/ / // /_/ /_/\__, /\__,_/_/ \____/ // /____/ //
信息
- ID
- 224
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 5
- 标签
- 递交数
- 102
- 已通过
- 40
- 上传者