Submission #1190400

#TimeUsernameProblemLanguageResultExecution timeMemory
1190400avighnaToxic Gene (NOI23_toxic)C++20
9.46 / 100
6 ms328 KiB
#include "toxic.h" void determine_type(int n) { std::vector<char> ans(n + 1); std::vector<int> v; int toxic_loc = 0; for (int i = 1; i <= n; ++i) { if (!query_sample(std::vector<int>({i}))) { ans[i] = 'T'; toxic_loc = i; } else { v.push_back(i); } } for (int i = 0; i < v.size(); i += 8) { std::vector<int> sample = {toxic_loc}; for (int bt = 0; bt < 8 and i + bt < v.size(); ++bt) { for (int j = 0; j < (1 << bt); ++j) { sample.push_back(v[i + bt]); } } int res = query_sample(sample); for (int bt = 0; bt < 8 and i + bt < v.size(); ++bt) { if (res & (1 << bt)) { ans[v[i + bt]] = 'S'; } else { ans[v[i + bt]] = 'R'; } } } for (int i = 1; i <= n; ++i) { answer_type(i, ans[i]); } }
#Verdict Execution timeMemoryGrader output
Fetching results...