Submission #524804

#TimeUsernameProblemLanguageResultExecution timeMemory
524804qwerasdfzxclMountains and Valleys (CCO20_day1problem3)C++14
2 / 25
13 ms12492 KiB
#include <bits/stdc++.h> typedef long long ll; using namespace std; vector<pair<int, int>> adj[500500]; int dist[500500]; void dfs(int s, int pa = -1){ if (pa==-1) dist[s] = 0; else dist[s] = dist[pa] + 1; for (auto &v:adj[s]) if (v.first!=pa) dfs(v.first, s); } int main(){ int n, m; scanf("%d %d", &n, &m); for (int i=0;i<m;i++){ int x, y, z; scanf("%d %d %d", &x, &y, &z); if (z!=1) continue; adj[x].emplace_back(y, z); adj[y].emplace_back(x, z); } dfs(0); dfs(max_element(dist, dist+n)-dist); printf("%d\n", (n-1)*2 - *max_element(dist, dist+n)); return 0; }

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:16:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |     scanf("%d %d", &n, &m);
      |     ~~~~~^~~~~~~~~~~~~~~~~
Main.cpp:19:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |         scanf("%d %d %d", &x, &y, &z);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
#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...