# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1143043 | Agageldi | Hidden Sequence (info1cup18_hidden) | C++17 | 2 ms | 424 KiB |
#include<bits/stdc++.h>
// #include "grader.cpp"
#include "grader.h"
#define pb push_back
#define sz(s) (int)s.size()
using namespace std;
int n, m, a[500];
vector <int> ask, bir, nol, answer;
string s, g;
vector < int > findSequence (int N)
{
int cnt0 = 0, cnt1 = 0;
for (int i = 0; i < 1000; i++) {
bir.push_back(1);
nol.push_back(0);
if (!isSubsequence(bir)) {
cnt1 = i;
cnt0 = N - cnt1;
break;
}
if(!isSubsequence(nol)) {
cnt0 = i;
cnt1 = N - cnt0;
break;
}
}
// cnt0 0 laryn cnt1 1 laryn sany
int pre_1 = 0, pre_0 = 0;
n = N;
while(N--) {
ask.clear();
if(pre_1 + 1 + (cnt0 - pre_0) <= (n/2) + 1) {
for(int i=1;i<=pre_1 + 1;i++) {
ask.pb(1);
}
for(int i = 1;i<=cnt0-pre_0;i++) {
ask.pb(0);
}
if(isSubsequence(ask)) {
answer.pb(1);
pre_1++;
}
else {
answer.pb(0);
pre_0++;
}
continue;
}
for(int i=1;i<=pre_0 + 1;i++) {
ask.pb(0);
}
for(int i = 1;i<=cnt1-pre_1;i++) {
ask.pb(1);
}
if(isSubsequence(ask)) {
answer.pb(0);
pre_0++;
}
else {
answer.pb(1);
pre_1++;
}
}
return answer;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |