М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
cerivcankin
cerivcankin
30.04.2022 18:39 •  Информатика

Маршрутка по программированию

👇
Ответ:
dianaorlova00
dianaorlova00
30.04.2022

Нужно передать водителю сумму, не меньшую суммарной стоимости всех пассажиров, передавших деньги. Очевидно, чтобы купюр было как можно меньше, сами купюры должны иметь как можно больший номинал. Кроме того, тем, кто передал 10 рублей, сдачу давать не нужно, передавшему 50 рублей – сдачей можно вернуть не более четырех десятирублевок, передавшему 100 рублей – не больше четырех 10-рублевой и 50-рублевку или не более девяти 10-рублевок.

Например, подойдет такое решение: считываем n10, n50 и n100 – количество 10-рублевок, 50-рублевок и 100-рублевок. Отдаем по четыре 10-рублевки каждому, заплатившему 50 рублей, потом тем, кто отдал 100 рублей. Оставшиеся 10-рублевки по 5 штук отдаем на сдачу со 100 рублей (таких людей k), и если кто-то остался без сдачи, пытаемся вручить им по 50 рублей.

Реализация (python 3):

n10, n50, n100 = map(int, input().split())

n10 = max(n10 - 4 * (n50 + n100), 0)

k = min((n10 + 4) // 5, n100)

n10 = max(n10 - 5 * k, 0)

n50 = max(n50 - (n100 - k), 0)

print(n10 + n50 + n100)

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

7 2 1

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

2

4,8(41 оценок)
Открыть все ответы
Ответ:
goodsmalgirl
goodsmalgirl
30.04.2022
Const
  MAX_SIZE = 10;
 
var
  a: array[1..MAX_SIZE] of integer;
  i, size: integer;
 
procedure delete_odd_elements();
var i, j: integer;
begin
  i := 1;
  repeat
    if odd(a[i]) then
    begin
      dec(size);
      for j := i to size do
        a[j] := a[j + 1]
    end
    else inc(i);
  until i > size;
end;
 
begin
  writeln('Исходный массив: ');
  size := MAX_SIZE;
  for i := 1 to size do
  begin
    a[i] := random(100);
    write(a[i] : 3);
  end;
  delete_odd_elements;
  writeln;
  writeln('Полученный массив: ');
  for i := 1 to size do
    write(a[i] : 3);
end.
4,4(49 оценок)
Ответ:
kolyapauk2016p08ax4
kolyapauk2016p08ax4
30.04.2022
1)Потому что информацию мы в скором времени забудем. А оперативная память-временная. Примеры:кол-во денег которое мне надо взять с собой что бы доехать завтра до вокзала; номера упражнений по геометрии которые надо сделать дома до завтра.
2)Достоинства оперативной памяти: не занимает место в долговременной, через некоторое время удалится(если речь про компьютер); позволяет возвращать несколько действий назад(например в ворде)
Недостатки: загружает компьютер; малое кол-во памяти
Достоинства долговременной памяти: почти не затормаживает компьютер; большое кол-во памяти
Недостатки: Поиск файлов может занять некоторое время; не вся информация может туда загрузится
4,8(77 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ