• Денис тоже решил заняться производством и продажей спиннеров, но он считает, что у спиннера может быть только три или четыре лопасти. У него есть ровно M лопастей, которые он может прикреплять к основаниям, и неограниченный запас оснований. Он хочет изготовить несколько трехлопастных и четырехлопастных спиннеров так, чтобы использовать все M лопастей. Определите, сколько спиннеров каждого вида он должен произвести.
    Программа получает на вход одно целое положительное число М,не превосходящее 2•10(9), — количество лопастей, которое есть у Дениса.
    Программа должна вывести два целых числа — количество спиннеров с 3 лопастями и количество спиннеров 4 лопастями, которое должен произвести Денис. Если у задачи есть несколько решений, нужно вывести любое из них. Если Денис не может использовать ровно М лопастей для производства спиннеров, программа должна вывести два числа 0.

Ответы 1

  • Небольшое наблюдение: если Денис может использовать ровно M лопастей, то он может использовать их так, чтобы четырёхлопастных спиннеров было не больше двух. (Если их три или больше, то каждые три четырёхлопастных спиннера можно поменять на 4 трёхлопастных).

    Код (C++)#include <iostream>int main() {    long long M;    std::cin >> M;    for (int f = 0; f < 3 && f * 4 <= M; f++) {        if ((M - f * 4) % 3 == 0) {            std::cout << (M - f * 4) / 3 << " " << f;            return 0;        }    }    std::cout << "0 0";    return 0;}

    • Автор:

      lady
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years