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 "island.h"
#include <bits/stdc++.h>
using namespace std;
int a[305][305];
vector<int>fii[305];
bool known[305];
int f(int i,int j)
{
    if (a[i][j] != 0)
        return a[i][j];
    a[i][j] = query(i,j);
    return a[i][j];
}
void solve(int N, int L)
{
    known[1] = true;
    for (int i = 1; i < N; i++)
    {
        int x = f(1,i);
        if (known[x] == true)
            continue;
        for (int j = 1; j < N; j++)
        {
            if (known[f(x,j)] == true)
            {
                fii[a[x][j]].push_back(x);
                break;
            }
            else
            {
                fii[x].push_back(a[x][j]);
                known[a[x][j]] = true;
            }
        }
        known[x] = true;
    }
    for (int i = 1; i <= N; i++)
        for (auto it : fii[i])
            answer(i,it);
}
| # | 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... | 
| # | 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... |