제출 #1076485

#제출 시각아이디문제언어결과실행 시간메모리
1076485Boas드문 곤충 (IOI22_insects)C++17
0 / 100
9 ms344 KiB
#include "insects.h" #include <bits/stdc++.h> using namespace std; #define pb push_back #define loop(x, i) for (int i = 0; i < x; i++) #define rev(x, i) for (int i = (int)x - 1; i >= 0; i--) #define ALL(x) begin(x), end(x) #define sz(x) (int)x.size() typedef pair<int, int> ii; typedef vector<ii> vii; typedef vector<bool> vb; typedef vector<int> vi; typedef vector<vi> vvi; int min_cardinality(int N) { vi ix(N); iota(ALL(ix), 0); std::random_device rd; std::mt19937 g(rd()); std::shuffle(ix.begin(), ix.end(), g); vvi S(N); int iter = 1; S[0].pb(0); move_inside(ix[0]); for (int i = 1; i < N; i++) { move_inside(ix[i]); int res = press_button(); if (res == 2) { move_outside(ix[i]); S[1].pb(i); } else S[0].pb(i); } int t = sz(S[0]); while (sz(S[iter])) { if (sz(S[iter]) < t) return iter; int curSize = 1; for (int i : S[iter - 1]) move_outside(ix[i]); move_inside(ix[S[iter][0]]); for (int s_ix = 1; s_ix < sz(S[iter]); s_ix++) { int i = S[iter][s_ix]; move_inside(ix[i]); int res = press_button(); if (res == 2) { move_outside(ix[i]); S[iter + 1].pb(i); } else curSize++; if (curSize == t) { for (int s_ix2 = s_ix + 1; s_ix2 < sz(S[iter]); s_ix2++) { S[iter + 1].pb(i); } break; } } if (curSize < t) return iter; } }

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

insects.cpp: In function 'int min_cardinality(int)':
insects.cpp:20:10: warning: control reaches end of non-void function [-Wreturn-type]
   20 |   vi ix(N);
      |          ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...