This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
//subtask 1
vector<int> adj[500];
int p[500];
int cop = 0;
void dfs(int actual, int anterior){
  p[actual] = anterior;
  for (auto it: adj[actual]){
    if (it != anterior){
      dfs(it, actual);
    }
  }
}
int start(int n, bool a[500][500]){
  for (int i = 0; i < n; i++){
    for (int j = 0; j < n; j++){
      if (a[i][j] == 1){
        adj[i].push_back(j);
      }
    }
  }
  dfs(0, -1);
  return 0;
}
int nextMove(int r){
  if (r == cop) return r;
  else{
    while (cop != p[r]){
      r = p[r];
    }
  }
  cop = r;
  return r;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |