Submission #1131970

#TimeUsernameProblemLanguageResultExecution timeMemory
1131970NoMercyMonster Game (JOI21_monster)C++20
10 / 100
59 ms408 KiB
#include "monster.h"

#include <bits/stdc++.h>
using namespace std;

vector<int> Solve (int N) {
    vector<int> cnt(N, N - 1);
    for (int i = 0;i + 1 < N;i ++) {
        for (int j = i + 1;j < N;j ++) {
            int tmp = Query (i, j);
            cnt[i] -= tmp == 0;
            cnt[j] -= tmp == 1;
        }
    }
    vector<int> index[2];
    for (int i = 0;i < N;i ++) {
        if (cnt[i] == 1 || cnt[i] == N - 2) index[cnt[i] == 1].push_back(i);
    }
    int tmp1 = Query (index[0][0], index[0][1]), tmp2 = Query (index[1][0], index[1][1]);
    cnt[index[0][0]] += (tmp1 == 0);
    cnt[index[0][1]] += (tmp1 == 1);
    cnt[index[1][0]] -= (tmp2 == 1);
    cnt[index[1][1]] -= (tmp2 == 0);
    return cnt;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...