Submission #1314573

#TimeUsernameProblemLanguageResultExecution timeMemory
1314573hxluk.kaCijanobakterije (COCI21_cijanobakterije)C++20
0 / 70
23 ms14024 KiB
#include <iostream> #include <vector> #include <utility> using namespace std; const int nx=1e5+3; int n, m, u, v, in[nx], vs[nx], mx, pmx, res; vector<int> adj[nx], radj[nx]; vector<pair<int, int>> r; void dfs(int x, int val) { if (val>mx) mx=val, pmx=mx; for (int u:adj[x]) { dfs(u, val+1); vs[u]; } } int main() { cin.tie(0)->sync_with_stdio(0); cin>>n>>m; for (int i=0; i<m; i++) { cin>>u>>v; adj[u].push_back(v); radj[v].push_back(u); in[v]++; } for (int i=1; i<=n; i++) { if (vs[i]||in[i]) continue; res++; mx=0; pmx=0; dfs(i, 0); r.push_back({mx, pmx}); } if (res==1) { cout<<mx+1; } else { for (auto [a,b]:r) res+=a+b; cout<<res; } }
#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...