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>
#include "monster.h"
using namespace std;
vector<int> Solve(int n)
{
vector<vector<bool> > w(n);
vector<int> s(n, 0), an(n), eo, enm;
int i, j;
for (i = 0; i < n; i++)
{
w[i].resize(n);
for (j = 0; j < n; j++)
{
if (j > i)
w[i][j] = Query(i, j);
else if (j == i)
w[i][j] = 0;
else
w[i][j] = !w[j][i];
if (w[i][j])
s[i]++;
}
}
for (i = 0; i < n; i++)
{
if (s[i] == 1)
eo.push_back(i);
else if (s[i] == n - 2)
enm.push_back(i);
else if (s[i] != 1 && s[i] != n - 2)
an[i] = s[i];
}
if (w[eo[0]][eo[1]])
{
an[eo[0]] = 0;
an[eo[1]] = 1;
}
else
{
an[eo[0]] = 1;
an[eo[1]] = 0;
}
if (w[enm[0]][enm[1]])
{
an[enm[0]] = n - 2;
an[enm[1]] = n - 1;
}
else
{
an[enm[0]] = n - 1;
an[enm[1]] = n - 2;
}
return an;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |