Задача №9
Дана программа:
g = int(input())
f = int(input())
A = int(input())
if (g < 8) or (f > A):
print("YES")
else:
print("NO")
Программу запускали 9 раз, при этом переменные g и f вводились парой чисел:
(3, 2); (11, 12); (–12, 8); (2, –2); (–10, 10); (5, 5); (12, 8); (11, 10); (8, 10).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает YES пять раз.
11
Ответ: 12
Пошаговое решение
1) Выясним, какие запуски программы дают YES независимо от A.
Условия: if (g < 8) or (f > A)
- Запуски с g < 8 дают YES независимо от A:
1) (3, 2)
3) (−12, 8)
4) (2, −2)
5) (−10, 10)
6) (5, 5)
Итого: 5 запусков YES уже без учёта A.
2) Остальные запуски зависят от A:
- 2-й запуск: (11, 12) — YES, если 12 > A, то при A < 12; иначе NO.
- 7-й запуск: (12, 8) — YES, если 8 > A, т.е. при A < 8; иначе NO.
- 8-й запуск: (11, 10) — YES, если 10 > A, т.е. при A < 10; иначе NO.
- 9-й запуск: (8, 10) — YES, если 10 > A, т.е. при A < 10; иначе NO.
Чтобы всего было ровно 5 YES, нужно, чтобы все четыре зависимых запуска дали NO. Это требует:
A ≥ 12 (чтобы 12 > A было ложно), и одновременно A ≥ 8, A ≥ 10, A ≥ 10, то есть
A ≥ max(12, 8, 10, 10) = 12.
3) Проверка на минимальность:
- При A = 12: все четыре зависящие запуска дают NO, итого YES остаются только в 5 автоматических случаях — всего 5 YES.
- При A = 11: запуск 2-й будет YES (12 > 11), что приводит к 6 YES.
Следовательно, минимально целое значение A = 12. Значение, которое вы указали (11), приводит к 6 YES.