Submission #534320

#TimeUsernameProblemLanguageResultExecution timeMemory
534320MonarchuwuMonster Game (JOI21_monster)C++17
10 / 100
219 ms284 KiB
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
typedef long long ll;
 
#include "monster.h"
const int N = 1000 + 3;
int cnt[N];
vector<int> Solve(int n) {
    for (int i = 0; i < n; ++i)
        for (int j = 0; j < i; ++j)
            ++cnt[Query(i, j) ? i : j];
 
    vector<int> ans(n, 0), vec1, vecn;
    for (int i = 0; i < n; ++i) {
        if (cnt[i] == n - 2) vecn.push_back(i);
        else if (cnt[i] == 1) vec1.push_back(i);
        else ans[i] = cnt[i];
    }
 
    if (Query(vec1[0], vec1[1]))
        ans[vec1[0]] = 0, ans[vec1[1]] = 1;
    else ans[vec1[0]] = 1, ans[vec1[1]] = 0;
 
    if (Query(vecn[0], vecn[1]))
        ans[vecn[0]] = n - 2, ans[vecn[1]] = n - 1;
    else ans[vecn[0]] = n - 1, ans[vecn[1]] = n - 2;
 
    return ans;
}
/**  /\_/\
 *  (= ._.)
 *  / >0  \>1
**/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...