蒟蒻写了一篇codeforces题解,可以参考一下。
A. Immobile Knight
判断一个点的所有可能后继点(能走到的点。)是否在地图里。
#include<bits/stdc++.h>
using namespace std;
int n, m;
int f[11][11];
int x[]={
0,1,2,2,1,-1,-2,-2,-1};
int y[]={
0,2,1,-1,-2,-2,-1,1,2};
bool inm(int a, int b) {
return (1<=a&&a<=n) && (1<=b&&b<=n); }
bool jud(int a, int b) {
for(int i=1; i<=8; ++i) {
if(inm(a+x[i], b+y[i])) return 1;
}
return 0;
}
int main() {
int t, a, b, c;
scanf("%d", &t);
while(t--) {
memset(f, 0, sizeof f);
scanf("%d%d"