Submission #527971

# Submission time Handle Problem Language Result Execution time Memory
527971 2022-02-18T21:30:51 Z tabr Martian DNA (IOI16_dna) C++17
0 / 100
15 ms 428 KB
#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;
            break;
        }
    }
    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

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 time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Incorrect 0 ms 204 KB Wrong DNA
3 Incorrect 1 ms 204 KB Wrong DNA
4 Incorrect 1 ms 204 KB Wrong DNA
5 Correct 1 ms 204 KB Output is correct
6 Incorrect 1 ms 204 KB Wrong DNA
7 Incorrect 0 ms 204 KB Wrong DNA
8 Incorrect 1 ms 204 KB Wrong DNA
9 Incorrect 0 ms 216 KB Wrong DNA
10 Incorrect 1 ms 204 KB Wrong DNA
11 Incorrect 0 ms 204 KB Wrong DNA
12 Incorrect 1 ms 204 KB Wrong DNA
13 Incorrect 0 ms 204 KB Wrong DNA
14 Incorrect 0 ms 204 KB Wrong DNA
15 Incorrect 1 ms 204 KB Wrong DNA
16 Incorrect 1 ms 204 KB Wrong DNA
17 Incorrect 1 ms 204 KB Wrong DNA
18 Incorrect 1 ms 204 KB Wrong DNA
19 Incorrect 1 ms 292 KB Wrong DNA
20 Incorrect 1 ms 204 KB Wrong DNA
21 Incorrect 0 ms 204 KB Wrong DNA
22 Incorrect 0 ms 204 KB Wrong DNA
23 Correct 1 ms 204 KB Output is correct
24 Incorrect 0 ms 204 KB Wrong DNA
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Incorrect 1 ms 204 KB Wrong DNA
3 Incorrect 1 ms 204 KB Wrong DNA
4 Incorrect 1 ms 204 KB Wrong DNA
5 Incorrect 1 ms 204 KB Wrong DNA
6 Incorrect 1 ms 204 KB Wrong DNA
7 Incorrect 1 ms 204 KB Wrong DNA
8 Incorrect 1 ms 204 KB Wrong DNA
9 Incorrect 1 ms 204 KB Wrong DNA
10 Incorrect 0 ms 204 KB Wrong DNA
11 Incorrect 1 ms 204 KB Wrong DNA
12 Incorrect 0 ms 204 KB Wrong DNA
13 Incorrect 1 ms 204 KB Wrong DNA
14 Incorrect 1 ms 204 KB Wrong DNA
15 Incorrect 1 ms 204 KB Wrong DNA
16 Incorrect 0 ms 204 KB Wrong DNA
17 Incorrect 1 ms 204 KB Wrong DNA
18 Incorrect 1 ms 204 KB Wrong DNA
19 Incorrect 1 ms 204 KB Wrong DNA
20 Incorrect 1 ms 204 KB Wrong DNA
21 Incorrect 1 ms 204 KB Wrong DNA
22 Incorrect 1 ms 204 KB Wrong DNA
23 Incorrect 1 ms 204 KB Wrong DNA
24 Incorrect 1 ms 296 KB Wrong DNA
25 Incorrect 1 ms 204 KB Wrong DNA
26 Incorrect 1 ms 204 KB Wrong DNA
27 Incorrect 1 ms 204 KB Wrong DNA
28 Incorrect 1 ms 204 KB Wrong DNA
29 Incorrect 1 ms 204 KB Wrong DNA
30 Incorrect 1 ms 204 KB Wrong DNA
31 Incorrect 1 ms 204 KB Wrong DNA
32 Incorrect 1 ms 204 KB Wrong DNA
33 Incorrect 1 ms 204 KB Wrong DNA
34 Incorrect 1 ms 204 KB Wrong DNA
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Wrong DNA
2 Incorrect 0 ms 204 KB Wrong DNA
3 Correct 0 ms 204 KB Output is correct
4 Incorrect 1 ms 296 KB Wrong DNA
5 Incorrect 0 ms 204 KB Wrong DNA
6 Correct 0 ms 204 KB Output is correct
7 Incorrect 0 ms 204 KB Wrong DNA
8 Incorrect 0 ms 204 KB Wrong DNA
9 Incorrect 0 ms 296 KB Wrong DNA
10 Incorrect 1 ms 204 KB Wrong DNA
11 Incorrect 1 ms 204 KB Wrong DNA
12 Incorrect 0 ms 204 KB Wrong DNA
13 Incorrect 1 ms 204 KB Wrong DNA
14 Incorrect 1 ms 204 KB Wrong DNA
15 Incorrect 0 ms 296 KB Wrong DNA
16 Incorrect 0 ms 204 KB Wrong DNA
17 Incorrect 1 ms 204 KB Wrong DNA
18 Incorrect 1 ms 204 KB Wrong DNA
19 Incorrect 1 ms 204 KB Wrong DNA
20 Incorrect 1 ms 204 KB Wrong DNA
21 Incorrect 1 ms 204 KB Wrong DNA
22 Incorrect 15 ms 332 KB Wrong DNA
23 Incorrect 15 ms 332 KB Wrong DNA
24 Incorrect 14 ms 332 KB Wrong DNA
25 Incorrect 14 ms 368 KB Wrong DNA
26 Incorrect 15 ms 368 KB Wrong DNA
27 Incorrect 10 ms 332 KB Wrong DNA
28 Incorrect 10 ms 332 KB Wrong DNA
29 Incorrect 10 ms 332 KB Wrong DNA
30 Incorrect 10 ms 360 KB Wrong DNA
31 Incorrect 10 ms 396 KB Wrong DNA
32 Incorrect 10 ms 340 KB Wrong DNA
33 Incorrect 10 ms 368 KB Wrong DNA
34 Incorrect 10 ms 344 KB Wrong DNA
35 Incorrect 10 ms 352 KB Wrong DNA
36 Incorrect 10 ms 368 KB Wrong DNA
37 Incorrect 10 ms 428 KB Wrong DNA
38 Incorrect 12 ms 392 KB Wrong DNA
39 Incorrect 12 ms 372 KB Wrong DNA