제출 #208355

#제출 시각아이디문제언어결과실행 시간메모리
208355MetBXoractive (IZhO19_xoractive)C++14
100 / 100
42 ms504 KiB
#include "interactive.h"
#include <bits/stdc++.h>

using namespace std;
 
vector <int> guess (int n) {
    map <int, int> ind;
    int d = ask (1);
 
    for (int b = 0; b < 7; b++) {
        vector <int> v;
 
        for (int i = 0; i < n; i++) {
            if (i & (1 << b)) v.push_back (i + 1);
        }
 
        if (v.empty ()) break;
        vector <int> ans = get_pairwise_xor (v);
        v.push_back (1);
        vector <int> ans2 = get_pairwise_xor (v);
 
        for (int a : ans)
            ans2.erase (find (ans2.begin (), ans2.end (), a));
 
        sort (ans2.begin(), ans2.end());
 
        for (int i = 1; i < ans2.size (); i += 2) {
            ind[ans2[i] ^ d] |= (1 << b);
        }
    }
 
    vector <int> ans (n);
 
    ans[0] = d;
 
    for (auto x : ind) {
        ans[x.second] = x.first;
    }
 
    return ans;
}

컴파일 시 표준 에러 (stderr) 메시지

Xoractive.cpp: In function 'std::vector<int> guess(int)':
Xoractive.cpp:27:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int i = 1; i < ans2.size (); i += 2) {
                         ~~^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...