Submission #1220292

#TimeUsernameProblemLanguageResultExecution timeMemory
1220292vaneaBurza (COCI16_burza)C++20
0 / 160
1 ms328 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

const int mxN = 4e2+10;

int dp[mxN];
vector<int> adj[mxN];

void dfs(int node, int p) {
    int mx1 = -1, mx2 = -1;
    for(auto it : adj[node]) {
        if(it == p) continue;
        dfs(it, node);
        mx2 = max(mx2, dp[it]+1);
        if(mx2 > mx1) swap(mx2, mx1);
    }
    if(mx2 != -1) dp[node] = mx2;
}

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int n, k;
    cin >> n >> k;
    for(int i = 1; i < n; i++) {
        int a, b;
        cin >> a >> b;
        adj[a].push_back(b);
        adj[b].push_back(a);
    }
    dfs(1, 0);
    cout << (dp[1] < k ? "DA" : "NE");
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...