Шешімі: Минимальное значение параметра A
Программа получает целые числа $s$, $t$ и $A$. Если выполняется условие $(s > A) \text{ или } (t > 12)$, программа печатает «YES», иначе печатает «NO».
Было проведено 9 запусков программы, при которых в качестве значений переменных $s$ и $t$ вводились следующие пары чисел: $(13, 2)$; $(11, 12)$; $(-12, 12)$; $(2, -2)$; $(-10, -10)$; $(6, -5)$; $(2, 8)$; $(9, 10)$; $(1, 13)$. Найдите наименьшее целое значение параметра $A$, при котором для указанных входных данных программа напечатает «NO» шесть раз.
Шешім по шагам
4 қадамПрограмма печатает «NO», если условие в операторе ветвления ложно:
$$\neg(s > A \lor t > 12) = (s \leq A) \land (t \leq 12)$$Для пары $(1, 13)$ значение $t$ больше 12, поэтому программа напечатает «YES» при любом значении $A$.
Для остальных восьми пар условие $t \leq 12$ выполнено. Значения $s$ в них равны $13, 11, -12, 2, -10, 6, 2, 9$.
В упорядоченном виде эти значения имеют вид $-12, -10, 2, 2, 6, 9, 11, 13$. Чтобы условие $s \leq A$ выполнялось ровно для шести пар, минимально возможное значение $A$ должно быть равно шестому значению, то есть $9$.
Где здесь ошибаются
Учитывают пару $(1, 13)$ среди запусков с ответом «NO».
Забывают, что при отрицании условия «или» должны одновременно выполняться оба условия.
Выбирают значение $A = 11$, хотя минимальное подходящее значение равно $9$.