답안 #410861

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
410861 2021-05-23T20:41:04 Z nichke Hidden Sequence (info1cup18_hidden) C++14
0 / 100
3 ms 200 KB
#include <bits/stdc++.h>
#include <grader.h>
using namespace std;

bool isSubsequence(vector<int> vi);

int ar[2];

vector<int> findSequence(int N) {
	int c1 = 0;
	for (int i = 1; i <= N / 2; i++) {
		vector<int> vi;
		for (int j = 0; j < i; j++) {
			vi.push_back(1);
		}
		if (isSubsequence(vi)) {
			c1++;
		} else {
			break;
		}
	}
	ar[1] = 1;
	ar[0] = 0;
	int c0 = N - c1;
	if (c0 > c1) {
		swap(c1, c0);
		ar[0] = 1;
		ar[1] = 0;
	}
	vector<int> ans;
	while (c1) {
		int c0 = 0;
		for (int i = 1; i <= N; i++) {
			vector<int> vi = ans;
			for (int j = 0; j < i; j++) vi.push_back(ar[0]);
			for (int j = 0; j < c1; j++) {
				vi.push_back(1);
			}
			if (vi.size() > N) break;
			if (isSubsequence(vi)) {
				c0++;
			} else {
				break;
			}
		}
		for (int j = 0; j < c0; j++) {
			ans.push_back(ar[0]);
		}
		ans.push_back(ar[1]);
		c1--;
	}
	while (ans.size() < N) ans.push_back(ar[0]);
	return ans;
}

Compilation message

hidden.cpp: In function 'std::vector<int> findSequence(int)':
hidden.cpp:39:18: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   39 |    if (vi.size() > N) break;
      |        ~~~~~~~~~~^~~
hidden.cpp:52:20: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   52 |  while (ans.size() < N) ans.push_back(ar[0]);
      |         ~~~~~~~~~~~^~~
grader.cpp: In function 'int main()':
grader.cpp:28:26: warning: format '%d' expects argument of type 'int', but argument 3 has type 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wformat=]
   28 |     fprintf (fifo_out, "%d\n", ans.size ());
      |                         ~^     ~~~~~~~~~~~
      |                          |              |
      |                          int            std::vector<int>::size_type {aka long unsigned int}
      |                         %ld
grader.cpp:29:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |     for (int i=0; i<ans.size () && i < N; i++)
      |                   ~^~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 200 KB Output is partially correct: Maximum length of a query = 8
2 Partially correct 1 ms 200 KB Output is partially correct: Maximum length of a query = 9
3 Partially correct 1 ms 200 KB Output is partially correct: Maximum length of a query = 8
4 Incorrect 1 ms 200 KB Output is not correct: The returned sequence does not match the hidden one
5 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 200 KB Output is not correct: The returned sequence does not match the hidden one
2 Halted 0 ms 0 KB -