Logo
(追記) (追記ここまで)

29005번 - Объединенная армия 스페셜 저지다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB0000.000%

문제

Для борьбы с могучими рейнджерами Рита Репульса и Лорд Зедд решили объединить Глиняный и Зедд патрули. Для более эффективного нападения на Энджел Гроув они хотят построить свою армию в две шеренги. Количество солдат в первой шеренге равно количеству солдат во второй.

Рита любит два вопроса:

  • <<Правда ли, что ровно $x$ из твоих соседей из Зедд патруля?>>
  • <<Правда ли, что ровно $y$ из твоих соседей из Глиняного патруля?>>

Соседями в данном построении являются солдаты слева и справа в той же шеренге, а также солдат, который стоит на той же позиции, но в другой шеренге. Рита выбрала либо один из этих вопросов либо оба, и задала каждому солдату. Всем солдатам были заданы вопросы с одними и теми же значениями $x$ и/или $y$.

Зордан с помощью своей магической силы все это время наблюдал за процессом построения. Он был очень удивлен тем, что ответы всех солдат были положительными. Однако, он помнит, что солдаты из Зедд патруля всегда говорят правду, а солдаты из Глиняного патруля обязательно солгут хотя бы на один вопрос.

Так как солдаты из Зедд патруля наиболее опасны по мнению Зордана, исходя из ответов, он хочет узнать какое наименьшее и наибольшее количество солдат из Зедд патруля могло быть в объединенной армии. Он обратился к вам за помощью!

입력

В единственной строке входного файла содержатся три целых числа $k,ドル $x,ドル $y$ --- количество солдат в одной шеренге и числа из вопросов (1ドル \le k \le 10^{5}, -1 \le x, y \le 3$).

Если $x = -1,ドル это означает, что Рита не задавала первый вопрос.

Если $y = -1,ドル это означает, что Рита не задавала второй вопрос.

Гарантируется, что Рита задала хотя бы один вопрос.

출력

Если для данных $k,ドル $x$ и $y$ не существует ни одного способа построения, выведите -1.

Иначе, первая строка выходного файла должна содержать одно число --- наименьшее возможное количество солдат из Зедд патруля в армии.

В следующих двух строках должно содержаться по $k$ символов <<0>> и <<1>> --- описание шеренг:

  • <<0>> означает, что в построении на соответствующей позиции стоит солдат из Глиняного патруля.
  • <<1>> --- солдат из Зедд патруля.

Вторая строка описывает первую шеренгу, третья --- вторую. Не разделяйте символы пробелами.

Четвертая строка выходного файла должна содержать одно число --- наибольшее возможное количество солдат из Зедд патруля в армии.

В пятой и шестой строках выведите описание возможного построения в таком случае в аналогичном формате.

Если существует несколько способов расставить солдат, разрешается вывести любой.

제한

예제 입력 1

2 0 -1

예제 출력 1

2
01
10
2
01
10

예제 입력 2

5 1 2

예제 출력 2

0
00000
00000
4
01010
01010

예제 입력 3

1 2 2

예제 출력 3

0
0
0
0
0
0

예제 입력 4

10 0 3

예제 출력 4

5
0100010010
0001000100
8
0101010100
0010101010

힌트

출처

Olympiad > Russian Olympiad in Informatics > Internet Olympiads in Informatics > 2016-2017 Season > March 19, 2017 D번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /