В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
andreyffyff
andreyffyff
15.02.2020 15:05 •  Информатика

Решите от руки как в програме или просто решите на листочке


Решите от руки как в програме или просто решите на листочке

Показать ответ
Ответ:
Zaichikfoto
Zaichikfoto
26.10.2020 16:52
#include <iostream>
#include <cstdlib>
#include <ctime>
int main()
{
    using namespace std;
    cout << "Enter size of array: ";
    int N;
    cin >> N;
    int * ARR = new int[N];
    srand(time(0));
    int i;
    for (i = 0; i < N; ++i)
        ARR[i] = rand() % 100 + 1;

    cout << "Here is an original array:\n";
    for (i = 0; i < N; ++i)
        cout << ARR[i] << "  ";
    cout << endl;

    int temp = ARR[N - 1];
    for (i = N - 1; i > 0; --i)
        ARR[i] = ARR[i - 1];
    ARR[0] = temp;

    cout << "\nHere is a new array:\n";
    for (i = 0; i < N; ++i)
        cout << ARR[i] << "  ";
    cout << endl;

    return 0;
}
0,0(0 оценок)
Ответ:
alinademushkina1
alinademushkina1
20.06.2020 02:37
"Жадный" алгоритм

// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var k:=Arr(1,2,5,10); // номиналы монет
  var m:=ReadArrInteger('Кол-во монет по '+k.JoinIntoString+' руб:',4);
  var n:=ReadInteger('Сумма в купюрах, руб:');
  if m.Zip(k,(p,q)->p*q).Sum<n then begin // нехватка монет
    Writeln('Размен невозможен'); exit
    end;
  var s:=''; // для результатов
  for var i:=k.Length-1 downto 0 do
    if (n>=k[i]) and (m[i]>0) then begin // номинал участвует
      var t:=min(n div k[i],m[i]); // кол-во монет
      n:=n-k[i]*t; // остаток
      if s.Length>0 then s+=', ';
      s+=t+' по '+k[i]+' руб.';
      end;
  if n<>0 then Writeln('Размен невозможен')
  else Writeln(s)
end.

Примеры
Кол-во монет по 1 2 5 10 руб: 350 215 86 130
Сумма в купюрах, руб: 1526
130 по 10 руб., 45 по 5 руб., 1 по 1 руб.

Кол-во монет по 1 2 5 10 руб: 500 146 0 38
Сумма в купюрах, руб: 432
38 по 10 руб., 26 по 2 руб.

Кол-во монет по 1 2 5 10 руб: 10 20 30 40
Сумма в купюрах, руб: 25000
Размен невозможен
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота