Submission #527968

#TimeUsernameProblemLanguageResultExecution timeMemory
527968tabrMartian DNA (IOI16_dna)C++17
0 / 100
2 ms344 KiB
#include <bits/stdc++.h> using namespace std; #ifdef tabr #include "library/debug.cpp" #else #define debug(...) #endif #ifdef tabr function<bool(string)> make_test; #else #include "dna.h" #endif mt19937 rng((unsigned int) chrono::steady_clock::now().time_since_epoch().count()); int rand_int(int a, int b) { // [a, b] return uniform_int_distribution<int>(a, b)(rng); } string analyse(int n, int) { string ans; int lst = -1; for (int i = 0; i < n; i++) { string c = to_string(rand_int(0, 1)); if (make_test(ans + c)) { ans += c; lst = i; } else { ans += to_string(c[0] ^ '0' ^ '1'); } if (lst + 15 < i) { if (make_test(ans)) { lst = i; continue; } int low = lst + 1; int high = (int) ans.size(); while (high - low > 1) { int mid = (high + low) >> 1; if (make_test(ans.substr(mid))) { low = mid; } else { high = mid; } } ans.resize(low); lst = low - 1; } } for (int i = (int) ans.size(); i < n; i++) { string c = to_string(rand_int(0, 1)); if (make_test(c + ans)) { ans = c + ans; } else { ans = c + ans; } } return ans; } #ifdef tabr int main() { ios::sync_with_stdio(false); cin.tie(0); return 0; } #endif

Compilation message (stderr)

grader.cpp: In function 'bool make_test(std::string)':
grader.cpp:14:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |  for (int i = 0; i < p.size(); i++) {
      |                  ~~^~~~~~~~~~
grader.cpp:23:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |  for (int i = 1; i <= ss.size(); i++) {
      |                  ~~^~~~~~~~~~~~
grader.cpp:28:13: warning: comparison of integer expressions of different signedness: '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |   if (pr[i] == p.size()) {
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...