Список чисел называется монотонно увеличивающимся (или неубывающим), если каждый элемент больше или равен элементу перед ним.
Например, 1, 1, 2, 4, 5, 5, 5, 8, 10, 11, 14, 14
монотонно увеличивается.
Учитывая монотонно растущий список положительных целых чисел, который имеет произвольное количество пустых пятен, обозначаемых как ?
, заполните пустые места положительными целыми числами так, чтобы в списке присутствовало как можно больше уникальных целых чисел, но он остается монотонно увеличивающимся.
Там может быть несколько способов сделать это. Любое действительно.
Выведите итоговый список.
Например , если вход
?, 1, ?, 1, 2, ?, 4, 5, 5, 5, ?, ?, ?, ?, 8, 10, 11, ?, 14, 14, ?, ?
гарантируется, что без пустых мест список будет монотонно увеличиваться
1, 1, 2, 4, 5, 5, 5, 8, 10, 11, 14, 14
и ваша задача состоит в том, чтобы назначить положительные целые числа каждому,
?
чтобы максимизировать число различных целых чисел в списке, сохраняя его неубывающим.Одно задание , которое является не действительным является
1, 1, 1, 1, 2, 3, 4, 5, 5, 5, 5, 5, 5, 5, 8, 10, 11, 14, 14, 14, 14, 14
потому что, хотя оно не уменьшается, у него есть только одно уникальное целое число, а не входное, а именно
3
.В этом примере можно вставить шесть уникальных натуральных чисел и сохранить список неубывающим.
Пара возможных способов:1, 1, 1, 1, 2, 3, 4, 5, 5, 5, 6, 7, 8, 8, 8, 10, 11, 12, 14, 14, 15, 16 1, 1, 1, 1, 2, 3, 4, 5, 5, 5, 5, 6, 6, 7, 8, 10, 11, 13, 14, 14, 20, 200
Любой из этих (и многих других) будет правильным выводом.
Все пустые места должны быть заполнены.
Не существует верхнего предела для целых чисел, которые можно вставить. Это нормально, если в научной записи напечатаны очень большие целые числа.
Ноль не является положительным целым числом и никогда не должен вставляться.
На месте ?
вы можете использовать любое приемлемое значение, которое не является положительным целым числом, например 0
, -1
, null
, False
, или ""
.
Самый короткий код в байтах побеждает.
Больше примеров
[input]
[one possible output] (a "*" means it is the only possible output)
2, 4, 10
2, 4, 10 *
1, ?, 3
1, 2, 3 *
1, ?, 4
1, 2, 4
{empty list}
{empty list} *
8
8 *
?
42
?, ?, ?
271, 828, 1729
?, 1
1, 1 *
?, 2
1, 2 *
?, 3
1, 3
45, ?
45, 314159265359
1, ?, ?, ?, 1
1, 1, 1, 1, 1 *
3, ?, ?, ?, ?, 30
3, 7, 10, 23, 29, 30
1, ?, 2, ?, 3, ?, 4
1, 1, 2, 3, 3, 3, 4
1, ?, 3, ?, 5, ?, 7
1, 2, 3, 4, 5, 6, 7 *
1, ?, 3, ?, 5, ?, ?, 7
1, 2, 3, 4, 5, 6, 7, 7
1, ?, ?, ?, ?, 2, ?, ?, ?, ?, 4, ?, 4, ?, ?, 6
1, 1, 1, 1, 1, 2, 3, 4, 4, 4, 4, 4, 4, 5, 6, 6
98, ?, ?, ?, 102, ?, 104
98, 99, 100, 101, 102, 103, 104 *