Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с олимпиадой python

ввв вв Ученик (87), на голосовании 1 день назад
У Толи есть n
карточек, на каждой из которых написано два числа — по одному числу с каждой стороны. На первой карточке написаны числа 0 и 1, на второй — 1 и 2, на третьей – 2 и 3, и т. д., на последней карточке написаны числа n−1
и n
.

Однажды Толя выложил карточки на столе в некотором порядке, посмотрел на полученные числа и задумался, не вкралась ли в карточки какая-то ошибка. Помогите Толе понять, можно ли выложить карточки в таком порядке, чтобы получился данный набор чисел.

Входные данные
Первая строка содержит число n
(1≤n≤1000
). Вторая строка содержит n
чисел ai
— числа, которые увидел Толя (0≤ai≤n
).

Выходные данные
Выведите «Yes», если такой набор чисел можно получить, и «No», если нельзя.

Вы можете вывести ответ в любом регистре. Например, строки «yEs», «yes», и «Yes» также будут распознаны как положительные ответы.

Примеры
Входные данныеСкопировать
4
2 1 4 1
Выходные данныеСкопировать
Yes
Входные данныеСкопировать
3
1 1 1
Выходные данныеСкопировать
No
Примечание
В первом примере возможна такая ситуация:

карточка 1 повернута числом 1,
карточка 2 повернута числом 1,
карточка 3 повернута числом 2,
карточка 4 повернута числом 4.
Во втором примере получить такой набор чисел невозможно, потому что на третьей карточке нет числа 1.
Голосование за лучший ответ
123 123 Знаток (429) 1 месяц назад
n = int(input())
a = [int(x) for x in input().split()]

a = sorted(a)
flag = 1
for i in range(1,n+1):
if abs(a[i-1] - i) >1:
flag = 0
break
if flag == 1:
print('Yes')
else:
print('No')
ввв ввУченик (87) 1 месяц назад
неа, неправильный ответ в тесте 5
123 123Знаток (429) 1 месяц назад
А они открытые?
ввв ввУченик (87) 1 месяц назад
кто?
123 123 Знаток (429) ввв вв, тесты
ввв ввУченик (87) 1 месяц назад
ага
123 123 Знаток (429) ввв вв, а какой 5 тест?
ввв ввУченик (87) 1 месяц назад
эт тип ошибка такая
123 123 Знаток (429) ввв вв, ну типо какие входные данные/ или там выдаёт ошибку по времени/неправильный ответ, а тесты закрытые?
ввв ввУченик (87) 1 месяц назад
аа тесты да закрытые
123 123 Знаток (429) попробуй так n = int(input()) a = [int(x) for x in input().split()] a = sorted(a) flag = 1 for i in range(1,n+1): if abs(a[i-1] - i) >1 and a[i-1]!=0: flag = 0 break if flag == 1: print('Yes') else: print('No')
123 123Знаток (429) 1 месяц назад
чуть исправил
123 123Знаток (429) 1 месяц назад
а ошибся
ввв ввУченик (87) 1 месяц назад
тоже самое
123 123 Знаток (429) ввв вв, понял n = int(input()) a = [int(x) for x in input().split()] a = sorted(a) print(a) flag = 1 for i in range(0,n): if abs(a[i]-i) >1: flag = 0 break if flag == 1: print('Yes') else: print('No')
ввв ввУченик (87) 1 месяц назад
теперь тест 1((((
123 123 Знаток (429) ввв вв, Забыл проверяющий принт убрать))) n = int(input()) a = [int(x) for x in input().split()] a = sorted(a) flag = 1 for i in range(0,n): if abs(a[i]-i) >1: flag = 0 break if flag == 1: print('Yes') else: print('No')
ввв ввУченик (87) 1 месяц назад
ахахахахах, я больше не могу((((( тест 2
Похожие вопросы