# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
433520 | 2021-06-20T03:15:49 Z | Lam_lai_cuoc_doi | Hidden Sequence (info1cup18_hidden) | C++17 | 6 ms | 300 KB |
#include <bits/stdc++.h> using namespace std; using ll = long long; using ld = long double; using ull = unsigned long long; constexpr bool typetest = 0; constexpr int N = 2e2 + 2; #include "grader.h" bool Check(int a, int b, int c) { vector<int> ans(a, c); while (b--) ans.emplace_back(c ^ 1); return isSubsequence(ans); } vector<int> findSequence(int n) { vector<int> ans; int total(0); // number of zero // count number of zero for (int i = 1; i <= n / 2 + 1; ++i) { if (!Check(i, 0, 0)) break; total = i; } if (total == n / 2 + 1) { total = 0; for (int i = 1; i <= n / 2 + 1; ++i) { if (!Check(i, 0, 1)) break; total = i; } total = n - total; } // Cal ans /* Let i is the bit 0 now we're considering (It means there are i - 1 filled - bits) j is the bit 1 now we're considering (It means there are j - 1 filled - bits) There are 2 cases: - if j + (total - i + 1) <= n / 2, we could check string (j * '1' + (total - i + 1) * '0') because the bit 0 before we don't need to care - if j + (total - i + 1) > n / 2 <-> n - j - total + i - 1 < n / 2 <-> i + (n - j - total) <= n / 2: we could checkstring (i * '0' + (n - j - total) * '1') because the string before the (i - 1) - 0 bit is defined so it's only necessary to check string after i - 0 bit */ for (int i = 1, j = 0; i <= total; ++i) // the bit 0 now we're considering { for (; j <= n - total; ++j) { if (j + (total - i + 1) ? !Check(j, total - i + 1, 1) : Check(i, n - total - j, 0)) break; ans.emplace_back(1); } ans.emplace_back(0); } while (ans.size() < n) ans.emplace_back(1); return ans; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 264 KB | Output is not correct: The returned sequence does not match the hidden one |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 6 ms | 300 KB | Output is not correct: The returned sequence does not match the hidden one |
2 | Halted | 0 ms | 0 KB | - |