Предмет: Информатика, автор: TvoiTaksist

Даю 100 баллов
Программирование, сделать задачу на С++
У вас есть стол, у которого есть 4 ножки, длины которых вам даны.

Вы хотите сделать ножки равной длины, для этого вы отпилите d от каждой ножки (т.е. вам будет дано 4 числа, каждое из которых будет означать отпил от ответной ножки стола). Если во время отпиливания самая длинная ножка стола будет в 2 раза больше, чем самая маленькая ножка – стол перевернется, но отпиливать ножки это вам не помешает.

То есть, если h max >= 2 h min то стол переворачивается. Внимание, это может произойти и между началом и концом отпиливания, например, когда отпиливают 2, но еще не успеют отпилить третью ножку. Также мы считаем, что перед отпиливанием стол не перевернется.

Ваша задача сказать после всех манипуляций стол будет целый и параллельный полу.

Если длина, которую отрежут, будет больше длины ножки - вам нужно вывести ERROR.

Внимание! Даже если стол перевернется – вы все равно отпиливаете ножки и можете получить ERROR.

Input
4 целых числа h1,2,3,4 – длины ножек стола 4 целых числа d1,2,3,4 – длина, которую отпиливают от соответствующей ножки

Output
YES – если стол будет стоять параллельно плоскости пола и длина наименьшей ножки не будет равна нулю.

ERROR - в случае если вы отпилите большую длину, чем имеет ножка

NO – в других случаях

Constraints:
0≤h1,2,3,4≤10^12
0≤d1,2,3,4≤10^12

Samples: (Примеры ввода значений для задачи)
Input (stdin):
10 10 10 10
1
1
1
1
Output (stdout):
YES


Input (stdin):
2147483648 1 1 1
1
1
1
1

Output (stdout):
NO

Input (stdin):
10 10 10 10
11
1
1
1

Output (stdout):
ERROR

Notes:
Во втором случае после первого отпиливания длина самой длинной ножки будет 10, а наименьшей 5 (5<=10/2) – стол перевернется. В третьем случае мы пытаемся отпилить длину 11 от ножки, имеющей длину 10

Ответы

Автор ответа: mx1hrs
0
#include

int main() {
long long h[4], d[4];

// Input lengths of legs
for (int i = 0; i < 4; ++i) {
std::cin >> h[i];
}

// Input lengths to be cut
for (int i = 0; i < 4; ++i) {
std::cin >> d[i];
}

// Process cuts
for (int i = 0; i < 4; ++i) {
// Check if cut length is greater than leg length
if (d[i] > h[i]) {
std::cout << "ERROR" << std::endl;
return 0;
}

// Update leg length after the cut
h[i] -= d[i];
}

// Check if the table will be parallel
if ((h[0] >= 2 * h[1] || h[1] >= 2 * h[0]) && (h[2] >= 2 * h[3] || h[3] >= 2 * h[2])) {
std::cout << "NO" << std::endl;
} else {
std::cout << "YES" << std::endl;
}

return 0;
}
Похожие вопросы
Предмет: Українська мова, автор: timurlevchuk0304
100 балів даю
Розставте правильно розділові знаки в цьому тексті: (не використувуйте чат джпт будь ласка там не правильно)
Є люди, яким судилося бути більшими за самих себе.Такий Василь Симоненко. Він іде до людських сердець,іде до нових поколінь, ітиме-сподіваємося- до наших нащадків. Перша поетична книжка Василя Симоненка мала промовисті назву “Тиша і грім “ Син полтавських , степів Василь Симоненко знав тишу степу , знав його задуму, знав епос степу, але й знав , якими напругами та електричними розрядами насичений цей степ і якими тривогами може повнитися безмежне небо над ним.Серед оголеної тиші заходило на грозу . Вдарила вона у збірці земне тяжіння, що вийшла вже по василевій смерті, 1964 року . У терпки подих степу увірвався бунтівний подих Дніпра шевченків дух. Серцевинні образи Симоненкової поезії, мати і вітчизна ,Україна.Вони навіки глибоко поєднані в його внутрішньому переживанні.Адже мати,основа роду і носій морального заповіту народу, у ній людська краса і правда серця, вона великий учитель любові до людей і рідної землі, і ця велика наука любові у вустах матері набирає характеру святого людського наказу, можна все на світі вибирати сину, вибрати не можна тільки батьківщину.