| 19 | const int inf = 1e9 + 7; |
| 20 | |
| 21 | void add_edge(vector<int> vec[], int u, int v) |
| 22 | { |
| 23 | vec[u].push_back(v); |
| 24 | vec[v].push_back(u); |
| 25 | } |
| 26 | |
| 27 | // dfs_func function gives discovery time and low time for any node... |
| 28 | // here we firstly give (discovery time and low time) to each node according to their finding time |