Submission #1161437

#TimeUsernameProblemLanguageResultExecution timeMemory
1161437JahonaliXRace (IOI11_race)C++20
21 / 100
3095 ms7952 KiB
#pragma GCC optimize("Ofast,O3,unroll-loops")
#pragma GCC target("avx,avx2")

#include <bits/stdc++.h>

using namespace std;

int best_path(int n, int k, int h[][2], int l[]) {
    int x = n;
    vector<vector<pair<int, int>>> a(n);
    for (int i = 0; i + 1 < n; ++i) a[h[i][0]].emplace_back(h[i][1], l[i]), a[h[i][1]].emplace_back(h[i][0], l[i]);
    function<void(int, int, int, int)> dfs = [&] (int i, int p, int c, int w) {
        if (w == k) {
            x = c;
            return;
        }
        if (c == x || w > k) return;
        for (auto [j, z] : a[i]) if (p != j) dfs(j, i, c + 1, w + z);
    };
    for (int i = 0; i < n; ++i) dfs(i, -1, 0, 0);
    if (x == n) x = -1;
    return x;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...