40pts求调
查看原帖
40pts求调
1074409
HShiDianLu楼主2023/10/3 18:32

用递归解的 9-16TLE

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <string>
#include <vector>
using namespace std;

bool w[1001][1001];
int n, m, q;

bool vme50(int a, int L) {
    if (a == 1 && L == 0) {
        return true;
    }
    else if (L == 0) {
        return false;
    }
    for (int i = 1; i <= n; i++) {
        if (w[a][i]) {
            if (vme50(i, L - 1)) {
                return true;
            }
        }
    }
    return false;
}

int main() {
    cin >> n >> m >> q;
    // 邻接矩阵
    int u, v;
    for (int i = 0; i < m; i++) {
        cin >> u >> v;
        w[u][v] = 1;
        w[v][u] = 1;
    }
    int a, L;
    for (int i = 0; i < q; i++) {
        cin >> a >> L;
        if (vme50(a, L)) {
            cout << "Yes" << endl;
        }
        else {
            cout << "No" << endl;
        }
    }
    return 0;
}
2023/10/3 18:32
加载中...