Контрольные задания > Задача №7: Укажите наибольшее целое значение параметра A, при котором для указанных входных данных программа напечатает NO четыре раза.
Вопрос:
Задача №7: Укажите наибольшее целое значение параметра A, при котором для указанных входных данных программа напечатает NO четыре раза.
Ответ:
Рассмотрим программу. Она принимает на вход три числа: s, t и A. Если s > A и t > 12, то программа печатает "YES", иначе печатает "NO". Программа была запущена 7 раз с различными значениями s и t: (13, 12), (11, 14), (12, 13), (10, 11), (14, 10), (13, 10), (12, 14).
Нам нужно найти такое наибольшее целое A, чтобы программа напечатала "NO" ровно 4 раза.
Проанализируем, когда программа печатает "NO". Это происходит, когда либо s <= A, либо t <= 12 (или оба условия выполняются).
Выпишем пары (s, t) и определим, при каких A для каждой пары будет выведено "NO".
1. (13, 12): "NO", если 13 <= A или 12 <= 12 (всегда верно, т.к. 12 = 12).
2. (11, 14): "NO", если 11 <= A или 14 <= 12 (14 > 12, ложно).
3. (12, 13): "NO", если 12 <= A или 13 <= 12 (13 > 12, ложно).
4. (10, 11): "NO", если 10 <= A или 11 <= 12 (всегда верно, т.к. 11 < 12).
5. (14, 10): "NO", если 14 <= A или 10 <= 12 (всегда верно, т.к. 10 < 12).
6. (13, 10): "NO", если 13 <= A или 10 <= 12 (всегда верно, т.к. 10 < 12).
7. (12, 14): "NO", если 12 <= A или 14 <= 12 (14 > 12, ложно).
Теперь определим, какие пары дают "NO" независимо от A (из-за условия t <= 12):
* (13, 12)
* (10, 11)
* (14, 10)
* (13, 10)
Всего 4 пары. Чтобы условие задачи выполнялось, нужно, чтобы остальные три пары давали "YES". Это означает, что:
* (11, 14): "YES", если 11 > A и 14 > 12 (14 > 12 верно, поэтому 11 > A).
* (12, 13): "YES", если 12 > A и 13 > 12 (13 > 12 верно, поэтому 12 > A).
* (12, 14): "YES", если 12 > A и 14 > 12 (14 > 12 верно, поэтому 12 > A).
Чтобы все три условия выполнялись, нужно, чтобы A было меньше и 11, и 12. То есть, A < 11. Если A = 11, то для пары (11, 14) s > A не выполняется, следовательно, вывод будет "NO", и количество выводов "NO" будет равно 5, что не соответствует условию задачи.
Рассмотрим случай, когда A = 12. Тогда для пары (12,13) и (12,14) s>A не выполняется, следовательно, вывод будет "NO", и количество выводов "NO" будет равно 6, что не соответствует условию задачи.
Значит, нам нужно найти наибольшее целое A, которое меньше и 11, и 12. Это число 11.
Однако, если A = 11, для пары (11,14) программа выдаст 'NO'. Поэтому мы должны выбрать A < 11. Максимальное целое такое число - 10.
Если A = 10:
* (13,12) -> NO (t<=12)
* (11,14) -> YES (11>10 и 14>12)
* (12,13) -> YES (12>10 и 13>12)
* (10,11) -> NO (s<=A, 10<=10)
* (14,10) -> NO (t<=12)
* (13,10) -> NO (t<=12)
* (12,14) -> YES (12>10 и 14>12)
"NO" выводится 4 раза.
Ответ: 11
**Развёрнутый ответ для школьника:**
Мы имеем программу, которая сравнивает числа s и t с некоторым числом A и числом 12. Нам нужно найти такое наибольшее целое число A, чтобы программа напечатала "NO" ровно 4 раза, когда мы подставляем в программу пары чисел (s, t) из списка.
Сначала мы смотрим, какие пары чисел (s, t) точно дадут "NO", потому что t <= 12. Это пары (13, 12), (10, 11), (14, 10) и (13, 10). Их уже 4.
Значит, остальные пары (11, 14), (12, 13) и (12, 14) должны давать "YES". Для этого нужно, чтобы s > A для каждой из этих пар. То есть, 11 > A, 12 > A и 12 > A.
Чтобы все эти условия выполнялись, A должно быть меньше, чем 11 и 12. Наибольшее целое число, которое меньше и 11, и 12 - это 10.
Проверяем: при A = 10 у нас будет 4 вывода "NO" и 3 вывода "YES". Таким образом, ответ – 10.