Олимпиадный тренинг

Задача . B. Конструирование массива


Для массива \(b\) размера \(m\) определим:

  • Позиция максимального префикса массива \(b\) — это наименьший индекс \(i\), удовлетворяющий условию \(b_1+\ldots+b_i=\max_{j=1}^{m}(b_1+\ldots+b_j)\);
  • Позиция максимального суффикса массива \(b\) — это наибольший индекс \(i\), удовлетворяющий условию \(b_i+\ldots+b_m=\max_{j=1}^{m}(b_j+\ldots+b_m)\).

Даны три целых числа \(n\), \(x\) и \(y\) (\(x > y\)). Сконструируйте массив \(a\) размера \(n\), удовлетворяющий условиям:

  • \(a_i\) равно либо \(1\), либо \(-1\) для всех \(1 \le i \le n\);
  • Позиция максимального префикса \(a\) равна \(x\);
  • Позиция максимального суффикса \(a\) равна \(y\).

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

Входные данные

Первая строка содержит целое число \(t\) (\(1 \leq t \leq 10^4\)) — количество наборов входных данных.

Для каждого набора входных данных:

  • Единственная строка содержит три целых числа \(n\), \(x\) и \(y\) (\(2 \leq n \leq 10^5, 1 \le y \lt x \le n)\).

Гарантируется, что сумма \(n\) по всем наборам входных данных не превосходит \(10^5\).

Выходные данные

Для каждого набора входных данных в отдельной строке выведите \(n\) целых чисел \(a_1, a_2, \ldots, a_n\).

Примечание

Во втором наборе входных данных

  • \(i=x=4\) — это наименьший индекс, удовлетворяющий условию \(a_1+\ldots +a_i=\max_{j=1}^{n}(a_1+\ldots+a_j)=2\);
  • \(i=y=3\) — это наибольший индекс, удовлетворяющий условию \(a_i+\ldots +a_n=\max_{j=1}^{n}(a_j+\ldots+a_n)=2\).

Таким образом, массив \(a=[1,-1,1,1]\) удовлетворяет всем условиям.


Примеры
Входные данныеВыходные данные
1 3
2 2 1
4 4 3
6 5 1
1 1
1 -1 1 1
1 1 -1 1 1 -1

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя