60分TLE求优化思路
查看原帖
60分TLE求优化思路
1192662
whrr楼主2024/12/18 20:39

纯暴力递推

#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;

const int N = 25;
int ex,ey,x1,y1,ans;
bool p[N][N];

void go(int x,int y){
    if(x == ex&&y == ey){
        ans++;
        return;
    }
    if(x >= 0 && x <= ex && y >= 0 && y <= ey && !p[x][y]){
        p[x][y] = true;
        go(x + 1,y);
        go(x,y + 1);
        p[x][y] = false;
    }else{
        return;
    }
}

int main(){
    cin>>ex>>ey>>x1>>y1;
    memset(p,false,sizeof p);
    p[x1][y1] = p[x1-1][y1-2] = p[x1-2][y1-1] = p[x1-2][y1+1] = 1;
    p[x1-1][y1+2] = p[x1+1][y1-2] = p[x1+2][y1-1] = p[x1+2][y1+1] = p[x1+1][y1+2] = 1;
    go(0,0);
    cout<<ans;
    return 0;
}

求优化思路

2024/12/18 20:39
加载中...