Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <bits/stdc++.h>using namespace std;constexpr int MOD = 1e9 + 7;constexpr int MAXN = 2e5 + 1;using ll = long long;int N, M, K;vector<int> graph[MAXN];int vis[MAXN];bool dfs(int u) {vis[u] = 1;for (int v : graph[u]) {if (vis[v] == 1) {return true;} else if (vis[v] == 0) {if (dfs(v))return true;}}vis[u] = 2;return false;}void solution() {for (int i = 1; i <= N; i++) {if (vis[i] == 0) {if (dfs(i)) {