Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+2

Задание по программированию

помогите пожалуйста :((((((( 1. Бабушкина скатерть
Ограничение времени 2 секунды
Ограничение памяти 256Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Бабушка поручила Васе выстирать её любимую льняную скатерть. Для этого она снабдила внука подробной инструкцией.

Вася справился со стиральной машиной. Теперь Вася хочет повесить скатерть сушиться во дворе. Во дворе есть бельевая веревка, натянутая на высоте h сантиметров и протяженностью l сантиметров. Скатерь представляет из себя прямоугольник со сторонами A и B сантиметров.

Вася хочет перекинуть скатерть через веревку так, чтобы висящая ткань не коснулась земли. Васе повезло, что веревка очень прочная, она не прогнется и сохранит высоту даже с развешенной на ней скатертью. Если скатерть свисает ровно до земли, касание не считается, так как площадь касания в таком случае ничтожно мала.

Василий просит вас подсказать ему, сможет ли он развесить скатерть на веревку так, чтобы та не касалась земли.

Формат ввода
В одной строке вводится четыре натуральных числа:

h, l — высота и длина бабушкиной веревки,

A и B — размеры скатерти в сантиметрах. (1 ≤ h, l, A, B ≤ 200).

Формат вывода
Если Вася сможет развесить скатерть так, чтобы та не касалась земли, выведите YES, иначе — NO.

По дате
По рейтингу
Аватар пользователя
Новичок
7мес

"Представляет собой", а не "представляет из себя". Из какого колхоза вышел автор этого задания?

Возьми да сравни большую сторону с большей, а меньшую - с меньшей, делов-то. Если по обоим измерениям скатерть помещается в прямоугольник, образованный сказочной негнущейся бельевой верёвкой, столбами и землёй, то выводи YES, иначе NO.

Вот код:

12
 h, l, a, b = map(int, input().split())
print(('NO','YES')[min(h, l) <= min(a, b) and max(h, l) <= max(a, b)]) 


А если скатерть перегибается пополам, то нужно проверить оба варианта с половиной одного из её измерений:

1234
 def fit(h, l, a, b): return min(h, l) <= min(a, b) and max(h, l) <= max(a, b)

h, l, a, b = map(int, input().split())
print(('NO','YES')[fit((h+1)//2, l, a, b) or fit(h, (l+1)//2, a, b)])