Submission #333334

#TimeUsernameProblemLanguageResultExecution timeMemory
333334emaborevkovicXoractive (IZhO19_xoractive)C++17
0 / 100
2 ms876 KiB
#include <bits/stdc++.h> #include <interactive.h> using namespace std; typedef long long ll; #define pb push_back #define mp make_pair #define ff first #define ss second const int N = 105; vector <int> v[N]; vector <int> c[N]; vector <pair <int, int> > s; int ima[N]; map <int, int> m; vector <int> guess(int n) { memset(ima, 0, sizeof ima); vector <int> res(n, 0); for (int i=0;i<n;i++) { v[i].clear(); c[i].clear(); } for (int i=1;i<n;i++) { int sada = i; for (int j=7;j>=0;j--) { if (sada >= 1<<j) { sada -= 1<<j; v[j].pb(i+1); ima[i]++; } } s.pb(mp(ima[i], i)); } int prvi = ask(1); for (int i=0;i<8;i++) { if (v[i].size() == 0) continue; vector <int> a, b; a = get_pairwise_xor(v[i]); v[i].pb(1); b = get_pairwise_xor(v[i]); int pos = 0; for (int j=0;j<a.size();j++) { while (a[j] != b[pos]) { c[i].pb(b[pos]); pos += 2; } pos += 2; } for (int j=0;j<c[i].size();j++) { c[i][j] ^= prvi; } } sort(s.begin(), s.end()); reverse(s.begin(), s.end()); for (auto x : s) { int sada = x.ss; int curr = 0; for (int i=7;i>=0;i--) { if (sada >= 1<<i) { sada -= 1<<i; for (int j=1;j<c[i].size();j++) { if (c[i][j] == -1) continue; m[c[i][j]]++; if (m[c[i][j]] == ima[x.ss]) curr = c[i][j]; } } } sada = x.ss; for (int i=7;i>=0;i--) { if (sada >= 1<<i) { sada -= 1<<i; for (int j=1;j<c[i].size();j++) { m[c[i][j]] = 0; if (c[i][j] == curr) c[i][j] = -1; } } } res[x.ss] = curr; } res[0] = prvi; return res; } /* int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); return 0; } */

Compilation message (stderr)

Xoractive.cpp: In function 'std::vector<int> guess(int)':
Xoractive.cpp:45:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |   for (int j=0;j<a.size();j++) {
      |                ~^~~~~~~~~
Xoractive.cpp:52:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   52 |   for (int j=0;j<c[i].size();j++) {
      |                ~^~~~~~~~~~~~
Xoractive.cpp:64:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   64 |     for (int j=1;j<c[i].size();j++) {
      |                  ~^~~~~~~~~~~~
Xoractive.cpp:75:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   75 |     for (int j=1;j<c[i].size();j++) {
      |                  ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...