제출 #1072879

#제출 시각아이디문제언어결과실행 시간메모리
1072879Double_SlashMinerals (JOI19_minerals)C++17
0 / 100
0 ms344 KiB
#include "minerals.h" #include <bits/stdc++.h> using namespace std; using ll = long long; void dfs(int n, const vector<int> &a, const vector<int> &b) { if (n == 1) { Answer(a.front(), b.front()); return; } int m = (n + 1) >> 1; vector<int> al, ar, bl, br; for (int i = 0; i < m; ++i) { al.emplace_back(a[i]); Query(a[i]); } for (int i = m; i < n; ++i) { ar.emplace_back(a[i]); } for (int i = 0; i < n; ++i) { if (Query(b[i]) == m) { bl.emplace_back(b[i]); } else { br.emplace_back(b[i]); } Query(b[i]); } for (int i = 0; i < m; ++i) { Query(a[i]); } dfs(m, al, bl); dfs(n - m, ar, br); } void Solve(int N) { mt19937 gen(chrono::high_resolution_clock::now().time_since_epoch().count()); deque<int> arr(N << 1); vector<int> a, b; iota(arr.begin(), arr.end(), 1); shuffle(arr.begin(), arr.end(), gen); while (not arr.empty()) { int x = arr.back(); arr.pop_back(); if (Query(x) == a.size()) { b.emplace_back(x); Query(x); while (b.size() < a.size()) { int y = arr.back(); arr.pop_back(); if (Query(y) == a.size()) { b.emplace_back(y); } Query(y); arr.push_front(y); } for (int y: a) Query(y); dfs(a.size(), a, b); a.clear(), b.clear(); } else { a.emplace_back(x); } } }

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

minerals.cpp: In function 'void Solve(int)':
minerals.cpp:45:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |         if (Query(x) == a.size()) {
      |             ~~~~~~~~~^~~~~~~~~~~
minerals.cpp:51:30: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   51 |                 if (Query(y) == a.size()) {
      |                     ~~~~~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...