Решение: Условие вывода NO
Ниже приведена программа, записанная на пяти языках программирования. Программа выводит «YES», если $s > A$ или $t > 12$, и выводит «NO» в противном случае. Было проведено 9 запусков программы, при которых в качестве значений переменных $s$ и $t$ вводились следующие пары чисел: $(13, 2)$; $(11, 12)$; $(-12, 12)$; $(2, -2)$; $(-10, -10)$; $(6, -5)$; $(2, 8)$; $(9, 10)$; $(1, 13)$. Укажите наибольшее целое значение параметра $A$, при котором для указанных входных данных программа напечатает «NO» два раза.
Решение по шагам
5 шаговПрограмма печатает «NO», если условие вывода «YES» ложно: $s \leq A$ и $t \leq 12$.
Пара $(1, 13)$ не может дать результат «NO», поскольку $t > 12$.
Для остальных восьми пар проверяем значения $s$: $13$, $11$, $-12$, $2$, $-10$, $6$, $2$, $9$.
Чтобы результат «NO» получился ровно два раза, условию $s \leq A$ должны удовлетворять ровно два значения. Два наименьших значения — $-12$ и $-10$, поэтому $-10 \leq A < 2$.
Наибольшее целое значение в этом диапазоне — $A=1$.
Где здесь ошибаются
Учитывать пару $(1, 13)$, хотя при $t=13$ программа всегда печатает «YES».
Использовать условие $s>A$ вместо противоположного ему условия $s\leq A$.
Выбрать $A=2$, при котором подходят уже три значения: $-12$, $-10$ и $2$.