| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 251422 | StevenH | Martian DNA (IOI16_dna) | C++14 | 15 ms | 384 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "dna.h"
#include <cstdlib>
#include <iostream>
#include <cmath>
#include <random>
using namespace std;
string analyse(int n, int t)
{
string str = "";
bool flag = 0;
int cnt = 0;
int k = 12;
while (str.size() < n || cnt != 0)
{
if (flag == 0)
{
string a, b;
if (rand() % 2)
a = "0", b = "1";
else
a = "1", b = "0";
if (make_test(str + a))
str += a, cnt = 0;
else
{
if (cnt == k)
{
if (!make_test(str + b))
{
// int l = 1, r = k;
// while (l < r)
// {
// int mid = (l + r + 1) / 2;
// string res = str.substr(0, str.size() - k + mid);
// if (make_test(res))
// l = mid;
// else
// r = mid - 1;
// }
// str = str.substr(0, str.size() - k + l);
int tag;
for (int i = 1; i <= cnt; i++)
{
if (make_test(str.substr(0, str.size() - cnt + i)))
tag = i;
else
break;
}
str = str.substr(0, str.size() - cnt + tag);
flag = 1;
cnt = 0;
continue;
}
else
{
str += b;
cnt = 0;
continue;
}
}
else
str += b, cnt++;
}
}
if (flag == 1)
{
if (make_test("0" + str))
str = "0" + str;
else
str = "1" + str;
}
if (str.size() == n)
{
// int l = 1, r = cnt;
// while (l < r)
// {
// int mid = (l + r + 1) / 2;
// string res = str.substr(0, str.size() - cnt + mid);
// if (make_test(res))
// {
// l = mid;
// }
// else
// r = mid - 1;
// }
// str = str.substr(0, str.size() - cnt + l);
int tag;
for (int i = 1; i <= cnt; i++)
{
if (make_test(str.substr(0, str.size() - cnt + i)))
tag = i;
else
break;
}
str = str.substr(0, str.size() - cnt + tag);
flag = 1;
cnt = 0;
}
}
return str;
}Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
