Submission #1052766

#TimeUsernameProblemLanguageResultExecution timeMemory
1052766j_vdd16Super Dango Maker (JOI22_dango3)C++17
22 / 100
1729 ms768 KiB
#include <algorithm> #include <bitset> #include <cstdint> #include <cstring> #include <iostream> #include <limits.h> #include <math.h> #include <map> #include <numeric> #include <queue> #include <set> #include <stack> #include <string> #include <vector> #define loop(X, N) for(int X = 0; X < (N); X++) #define all(V) V.begin(), V.end() #define rall(V) V.rbegin(), V.rend() using namespace std; typedef vector<int> vi; typedef vector<vi> vvi; typedef pair<int, int> ii; typedef vector<ii> vii; typedef vector<vector<ii>> vvii; typedef vector<bool> vb; typedef vector<vector<bool>> vvb; #include "dango3.h" void Solve(int n, int m) { int colorCount = 1; vi color(n * m); color[0] = 0; vvi byColor(n); byColor[0].push_back(0); for (int i = 1; i < n * m; i++) { vi y; for (int j = i + 1; j < n * m; j++) y.push_back(j + 1); loop(j, colorCount) { for (int k = 1; k < byColor[j].size(); k++) { y.push_back(byColor[j][k] + 1); } } int res; if (colorCount <= n) res = Query(y); else res = 0; if (res == m - 1) { color[i] = colorCount; byColor[colorCount].push_back(i); colorCount++; } else { int l = 0, r = colorCount - 1; while (l < r) { int middle = (l + r) / 2; vi x; for (int j = i + 1; j < n * m; j++) x.push_back(j + 1); loop(j, colorCount) { int k = 0; if (l <= j && j <= middle) k++; for (; k < byColor[j].size(); k++) { x.push_back(byColor[j][k] + 1); } } res = Query(x); if (res == m - 1) { l = middle + 1; } else { r = middle; } } color[i] = l; byColor[l].push_back(i); } } loop(i, m) { vi x; loop(j, n) { x.push_back(byColor[j][i] + 1); } Answer(x); } }

Compilation message (stderr)

dango3.cpp: In function 'void Solve(int, int)':
dango3.cpp:45:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |             for (int k = 1; k < byColor[j].size(); k++) {
      |                             ~~^~~~~~~~~~~~~~~~~~~
dango3.cpp:74:30: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   74 |                     for (; k < byColor[j].size(); k++) {
      |                            ~~^~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...