原题地址
题意就是让你计算总共通过数,要出去马能在的八个点
#include<iostream>
#include<vector>
#include<bits/stdc++.h>
//#include<math.h>
using namespace std;
int x[]={1,2,2,1,-1,-2,-2,-1};
int y[]={-2,-1,1,2,2,1,-1,-2};
int main( )
{
int n,m ;
int f[101][101]={1},a[101][101]={0};
int l,r;
cin>>n>>m>>l>>r;
a[l][r]=1;
for(int i=0;i<8;i++)
a[l+x[i]][r+y[i]]=1;
for(int i=0;i<=n;i++)
{
for(int j=0;j<=m;j++)
{
if(i&&!a[i-1][j])
f[i][j]+=f[i-1][j];
if(j&&!a[i][j-1])
f[i][j]+=f[i][j-1];
}
}
cout<<f[n][m]<<endl;
return 0;
}