Submission #1360279

#TimeUsernameProblemLanguageResultExecution timeMemory
13602790x34cBurza (COCI16_burza)C++20
0 / 160
1 ms344 KiB
#include <bits/stdc++.h>
#define ll long long
#define pii pair<int, int>
#define endl '\n'
#define int ll
#define ff first
#define ss second

using namespace std;

vector<int> dep;
vector<vector<int>> graph;

int dfs(int v, int p)
{
    vector<int> mxi;
    for (int u : graph[v])
    {
        if (u == p)
            continue;
        dep[u] = dep[v] + 1;
        mxi.push_back(dfs(u, v));
    }

    if (mxi.size() <= 1)
        return 0;
    sort(mxi.begin(), mxi.end());
    return mxi[mxi.size() - 2] + 1;
}

signed main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    int N, K;
    cin >> N >> K;

    dep.resize(N, 0);
    graph.resize(N);

    for (int i = 0; i < N - 1; i++)
    {
        int a, b;
        cin >> a >> b;
        --a;
        --b;

        graph[a].push_back(b);
        graph[b].push_back(a);
    }

    int res = dfs(0, -1);
    if (res < K)
        cout << "DA" << endl;
    else
        cout << "NE" << endl;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...