Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Bismillahir Rahman-ir Rahim
- #include <bits/stdc++.h>
- using namespace std;
- #define debug(x) cout << '>' << #x << " : " << x << endl;
- #define all(c) c.begin(), c.end()
- #define F first
- #define S second
- typedef unsigned long long ull;
- typedef long long ll;
- int times = 0;
- vector <int> adj[500];
- vector <int> starttimes(500);
- vector <int> endtimes(500);
- vector <int> vis(500);
- void dfs(int node){
- vis[node] = 1;
- for(auto v: adj[node]){
- level[v] = node;
- parent[v] = node;
- if(!vis[v]){
- dfs(v);
- }
- }
- }
- int main(){
- int n, e;
- cin >> n >> e;
- for(int i = 0; i < e; i++){
- int u, v;
- cin >> u >> v;
- adj[u].push_back(v);
- }
- for(int i = 1; i <= n; i++)
- {
- if(vis[i] != 1){
- dfs(i)
- cnt++;
- }
- }
- dfs(1);
- for(int i = 1; i <= n; i++){
- cout << "node " << i << ": " << starttimes[i] << " | " << endtimes[i] << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement