Submission #404256

#TimeUsernameProblemLanguageResultExecution timeMemory
404256ftkbrianCactus? Not cactus? (kriii1_C)C++14
0 / 1
2 ms2636 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define pb push_back ///간단히 생각해보면 cactus는 전체에서 사이클이 하나여야 함을 알 수 있음 ///tree에 역행간선 하나 존재시 cactus일 것 ///dfsordering + 깊이 저장 후 역행 간선 개수 2개 이상인 정점 개수 찾기 ll n,m,dep[101010],chk; vector<ll> V[101010]; void dfs(ll tar,ll p) { if(dep[tar]) return; dep[tar] = dep[p]+1; for(auto i : V[tar]) dfs(i,tar); } main() { ios_base::sync_with_stdio(false); cin.tie(0),cout.tie(0); cin>>n>>m; for(int i = 0 ; i < m ; i++) { ll a,b; cin>>a>>b; V[a].pb(b), V[b].pb(a); } dfs(1,1); for(int i = 1 ; i <= n ; i++) { ll t = 0; for(auto q : V[i]) if(dep[q] < dep[i]) t++; if(t == 2) chk++; else if(t > 2){ cout<<"Not cactus"; return 0; } } if(chk < 2) cout<<"Cactus"; else cout<<"Not cactus"; }

Compilation message (stderr)

C.cpp:17:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   17 | main()
      | ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...