Вопрос задан 04.07.2023 в 19:54. Предмет Информатика. Спрашивает Скульский Матвей.

ОЧЕНЬ СРОЧНО!!!!!! На заводе по производству воды «Серебряный ключик»* каждый день добытую воду

заливают в пустую цистерну, в которой замеряют количество добытой воды. После чего воду из цистерны разливают в фасовочную тару – бутылки ёмкостью 4 и 6 литров таким образом, чтобы остаток, которым невозможно заполнить фасовочную тару, был минимально возможным. Полученный после розлива по бутылкам в конце дня остаток в кол-ве K литров выливают и считают потерями производства. Каковы будут потери за день, если добыто N литров воды? Формат ввода Во входном файле содержится единственное целое число – N – кол-во добытой за день воды в литрах, 0 ≤ N ≤ 10000. Формат вывода В выходной файл необходимо вывести единственное число – K –потери производства за тот же день. Потери могут быть нулевыми (т.е. потерь может не быть). В этом случае K = 0 (необходимо вывести число 0).
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Давыдова Вика.

Для начала по-максимуму постараемся разлить воду по 6-литровым бутылкам, а остатки - по 4 литровым, таким образом вылито будет минимальное количество жидкости.

Код:

  • #include <fstream>
  • int main() {
  •    std::ifstream cin("input.txt");
  •    std::ofstream cout("output.txt");
  •    int N;
  •    cin >> N;
  •    cout << (N % 6) % 4;
  •    return 0;
  • }
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

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

Ваша задача: на вход подается количество добытой воды N, а на выходе нужно вычислить количество потерянной воды K.

python
def calculate_losses(N): # Подготовка бутылок с объемами 6 и 4 литра bottle_6 = N // 6 bottle_4 = (N % 6) // 4 # Рассчитываем остаток после разлива remaining_water = N - (bottle_6 * 6 + bottle_4 * 4) return remaining_water # Считываем количество добытой воды N = int(input()) # Вычисляем потери K = calculate_losses(N) # Выводим результат print(K)

Пример входных данных:

17

Пример вывода:

1

Объяснение: При добыче 17 литров воды, мы можем заполнить две бутылки по 6 литров и одну бутылку по 4 литра, оставляя 1 литр незаполненным, который и будет потерей.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос