Submission #1271808

#TimeUsernameProblemLanguageResultExecution timeMemory
1271808vyaductBurza (COCI16_burza)C++20
0 / 160
0 ms328 KiB
#include <bits/stdc++.h>
using namespace std;

#define all(c) (c).begin(), (c).end()
#define sz(c) (int)(c).size()
#define vt vector
#define pb push_back

const string yes = "DA";
const string no = "NE";
const int INF = 1e9;
const int mxN = 400;
vt<int> adj[mxN];
int dp[mxN];

void dfs(int v, int par){
  int m=INF;
  int t=0;
  for (int u: adj[v]){
    if (u == par) continue;
    dfs(u, v);
    t++;
    m = min(m, dp[u]);
  }
  if (t == 1) dp[v] = 0;
  else dp[v] = m+1;
}

void solve(){
  int n,k; cin>>n>>k;
  for (int i=0;i<n-1;i++) {
    int u,v; cin>>u>>v; u--,v--;
    adj[u].pb(v); adj[v].pb(u);
  }
  dfs(0, -1);
  cout << (dp[0] <= k ? yes : no) << endl;
}

int main(){
  solve();
}

#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...