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

помогите пожалуйста! На c++ нужно задачу решить:

Задача №502. Ресторан
В одном курином ресторане можно купить
1 ножку + 1 крыло,
1 ножку + 1 бедро,
1 бедро,
2 крыла,
или 3 крыла.
Требуется определить, можно ли купить ровно k крыльев, n ножек и b бедер.

Входные данные
Вводятся три числа k, n, b. Все числа целые неотрицательные, не превосходящие 100.

Выходные данные
Выведите слово YES, если купить указанный набор можно, NO – если нельзя (заглавными латинскими буквами).


devpaul: Если нужно с комментариями - скажи. Написал на С++, проверил, всё работает.
vladguru: YES

Ответы

Автор ответа: devpaul
1

Ответ:

#include <iostream>

using namespace std;

int main() {

int k, n, b;

cin >> k >> n >> b;

int legs_from_3_wings = 3;

int thighs_from_3_wings = 3;

int legs_from_2_wings = 2;

int thighs_from_2_wings = 2;

int total_legs = legs_from_2_wings * (n / 2) + legs_from_3_wings * (b / 3);

int total_thighs = thighs_from_2_wings * (n / 2) + thighs_from_3_wings * (b / 3);

n = n % 2;

b = b % 3;

if (k + n + b <= total_legs + total_thighs && (n % 2 == 0 || b % 3 == 0)) {

cout << "YES" << endl;

} else {

cout << "NO" << endl;

}

return 0;

}

Похожие вопросы
Предмет: Математика, автор: DaniilBulashov