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

Help, please!! В одном известном магазине случилась распродажа, однако администрация не учла одну проблему: в магазине всего одна касса! Сразу после начала распродажи возле кассы организовалась
длинная очередь. Никто не любит очереди, поэтому у покупателей постепенно возрастает уровень
агрессии. От вас требуется рассмотреть процесс продвижения очереди.
Могут происходить события трёх типов:
1. В конец очереди встал человек с уровнем агрессии a;
2. Первый человек в очереди начал ругаться с кассиром, в результате чего уровень его агрессии
увеличился на x, а уровень агрессии каждого из остальных людей в очереди (если в очереди
стоит не один человек) увеличился на y;
3. Первый человек в очереди оплатил покупку и ушёл из магазина.
От вас требуется обработать N событий. Будем считать, что изначально очередь пуста. Так как
администрация магазина заботится о своей репутации, им важно знать, насколько агрессивными их
покупатели уходят из магазина. Поэтому для каждого события третьего типа нужно определить
уровень агрессии человека, который ушёл из магазина.
Формат входных данных
В первой строке записано одно число N — количество событий (2 6 N 6 300000).
В каждой из следующих N строк содержится описание очередного события:
• 1 a, если произошло событие первого типа;
• 2 x y, если произошло событие второго типа;
• 3, если произошло событие третьего типа.
Для всех событий верно, что 1 6 a, x, y 6 109
. Гарантируется, что события второго и третьего
типов происходят только в том случае, если в очереди есть хотя бы один человек. Также гарантируется, что после N событий в очереди не останется ни одного человека. Возможны случаи, когда
первый человек в очереди несколько раз подряд ссорится с кассиром.
Формат выходных данных
Для каждого запроса третьего типа выведите одно число — уровень агрессии человека, который
ушёл из магазина. Каждое число следует выводить на отдельной строке.
Пример
стандартный ввод стандартный вывод
8
1 4
1 2
2 6 1
3
2 10 20
1 1
3
3
output
10
13
1
Замечание
Сначала в очередь встали два человека с уровнями агрессии 4 и 2 соответственно. Затем первый
человек поссорился с кассиром, после чего уровни агрессии людей стали равны 10 и 3. После этого
первый человек ушёл из очереди, а второй поссорился с кассиром. Теперь уровень его агрессии
равен 13. Затем в очередь встал человек с уровнем агрессии 1, после чего оба человека ушли из
магазина.

Показать ответ
Ответ:
nasty78ss
nasty78ss
24.10.2020 21:09

Результат в приложении

Объяснение:

int main()

{

   int x[20] = { 1,-2,3,-4,5,-6,-7,3,-1,14,33,45,-1,13,-8,3,2,8,90,11 };

   int y[20];

   int n = 0;

   for (int i = 1; i < 19; i++)

   {

       if (x[i - 1] < 0 && x[i + 1] < 0)

       {

           bool exists = false;

           for (int j = 0; j < n; j++)

           {

               if (y[j] == x[i])

               {

                   exists = true;

                   break;

               }

           }

           if (!exists)

           {

               y[n] = x[i];

               n++;

           }

       }

   }

   if (n == 0)

       std::cout << "Нет элементов" << std::endl;

   else

   {

       for (int i = 0; i < n; i++)

       {

           std::cout << (y[i]) << " ";

       }

       std::cout << std::endl;

   }

   _getch(); //Экран не закрывается, пока не нажата любая клавиша

   return 0;

}


НАПИСАТЬ КОД НА С . Задан целочисленный массив Х из 20 элементов. Получить массив Y, в который переп
0,0(0 оценок)
Ответ:
ajshshdj
ajshshdj
12.05.2022 06:20
Алгоритм сортировки строки массива по возрастанию методом прямого выбора может быть представлен так:
1. Просматривая строку массива от первого элемента, найти минимальный элемент и поместить его на место первого элемента, а первый — на место минимального.
2. Просматривая строку массива от второго элемента, найти минимальный элемент и поместить его на место второго элемента, а второй — на место минимального.
3. И так далее до предпоследнего элемента.

Решение:

//Pascal
const
  n = 7;

var
  a: array[1..n, 1..n] of integer;
  i, j, min, ind: integer;

//Заполнение массива сл. числами и вывод на экран
begin
  for i := 1 to n do
  begin
    for j := 1 to n do
    begin
      a[i, j] := random(100);
      write(a[i, j]:4);
    end;
    writeln;
  end;
 
  //Сортировка строки матрицы прямым выбором
 
  for i := 1 to n - 1 do
  begin
    min := a[4, i];
    ind := i;
    for j := i + 1 to n do
      if a[4, j] < min then
      begin
        min := a[4, j];
        ind := j;
      end;
    a[4, ind] := a[4, i];
    a[4, i] := min;
  end;
  writeln;
 
    //вывод отсортированной строки
  for j := 1 to n do
  begin
    write(a[4, j]:4);
  end;
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота