Контрольные задания > Ниже приведена программа, записанная на пяти языках программирования. Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел: (-9, 11); (2, 7); (5, 12); (2, -2); (7, -9); (12, 6); (9, -1); (7, 11); (11, -5). Укажите наибольшее целое значение параметра A, при котором для указанных входных данных программа напечатает «YES» шесть раз.
Вопрос:
Ниже приведена программа, записанная на пяти языках программирования. Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел: (-9, 11); (2, 7); (5, 12); (2, -2); (7, -9); (12, 6); (9, -1); (7, 11); (11, -5). Укажите наибольшее целое значение параметра A, при котором для указанных входных данных программа напечатает «YES» шесть раз.
Программа выводит "YES", если выполняется условие (s > A) или (t > 11). Нам нужно найти наибольшее целое значение A, при котором программа выведет "YES" ровно 6 раз.
Давайте посмотрим на пары чисел ( (s, t) ) и определим, при каких значениях A программа выведет "YES".
1. ( (-9, 11) ): ( t = 11 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( -9 > A ).
2. ( (2, 7) ): ( t = 7 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 2 > A ).
3. ( (5, 12) ): ( t = 12 ). Условие ( t > 11 ) выполняется. Программа выведет "YES" независимо от A.
4. ( (2, -2) ): ( t = -2 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 2 > A ).
5. ( (7, -9) ): ( t = -9 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 7 > A ).
6. ( (12, 6) ): ( t = 6 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 12 > A ).
7. ( (9, -1) ): ( t = -1 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 9 > A ).
8. ( (7, 11) ): ( t = 11 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 7 > A ).
9. ( (11, -5) ): ( t = -5 ). Условие ( t > 11 ) не выполняется. Для вывода "YES" нужно, чтобы ( s > A ), то есть ( 11 > A ).
Итак, у нас есть 9 запусков. Один из них (третий) всегда выводит "YES". Нам нужно, чтобы еще 5 запусков вывели "YES" из оставшихся 8. Давайте посмотрим, какие значения A приведут к этому.
Чтобы получить ровно 6 выводов "YES", нужно, чтобы из оставшихся 8 пар, 5 удовлетворяли условию ( s > A ).
Запишем условия ( s > A ) для оставшихся 8 пар:
1. ( -9 > A )
2. ( 2 > A )
3. ( 2 > A )
4. ( 7 > A )
5. ( 12 > A )
6. ( 9 > A )
7. ( 7 > A )
8. ( 11 > A )
Теперь отсортируем значения s по убыванию: 12, 11, 9, 7, 7, 2, 2, -9.
Если ( A = 6 ), то условию ( s > A ) удовлетворяют: 12, 11, 9, 7, 7. Это 5 пар, плюс одна пара (5, 12) всегда дает "YES". Итого 6 "YES".
Если ( A = 7 ), то условию ( s > A ) удовлетворяют: 12, 11, 9. Это 3 пары, плюс одна пара (5, 12) всегда дает "YES". Итого 4 "YES", что меньше 6.
Проверим ( A = 11 ). Условию ( s > A ) удовлетворяет только 12. То есть всего 2 "YES".
Значит, ( A = 6 ) - это наибольшее целое значение, при котором программа выведет "YES" шесть раз.
Ответ: 6