fvrvdv
27.04.2021 10:50

C. Выигранный спор ограничение по времени на тест1.0 с

ограничение по памяти на тест256 мегабайт

вводстандартный ввод

выводстандартный вывод

Недавно Азамат гуляя по кампусу университета увидел как группа парней пытаются решить одну задачу. Он поспорил что решит эту задачу в течении 1 дня, решил показаться крутым, но в итоге он понял, что не справится, поэтому решил попросить у вас.

Задача состоит в следующем. Ребята нашли список того, что будут давать в столовой в ближайшие n дней. Главный из ребят указал насколько ему нравится то, что будет в определенный день. Теперь он думает насколько ему понравятся блюда на определенном отрезке дней.

Формально, вам задан массив a длины n. Также вам дается q запросов. Каждый запрос состоит из отрезка l,r. Надо посчитать сумму на этом отрезке.

Входные данные

Первая строка состоит из двух целых чисел n (1<=n<=100000), q (1<=q<=100000). Вторая строка состоит из n чисел - массив a В следующих q строках дается l, r (1<=l<=r<=n)

Выходные данные

Вывести q строк - сумму на каждом отрезке

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
викуха308
21.03.2023 03:59
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк в массиве:');
  var m:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив [',n,',',m,'] ***');
  var a:=MatrRandom(n,m,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  // Отсортировать массив по возрастанию в столбцах
  for var j:=0 to a.ColCount-1 do
    a.SetCol(j,a.Col(j).OrderBy(x->x).ToArray);
  Writeln('*** Массив, сортированный по колонкам ***');
  a.Println(4); Writeln(4*a.ColCount*'-');
  // элементы, записанные в обратном порядке в строках и в столбцах
  var b:=new integer[a.RowCount,a.ColCount];
  for var i:=0 to a.RowCount-1 do
    b.SetRow(i,a.Row(i).Reverse.ToArray);
  for var j:=0 to a.ColCount-1 do
    b.SetCol(j,b.Col(j).Reverse.ToArray);
  Writeln('*** Созданный массив ***'); b.Println(4)
end.

Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 7
*** Исходный массив [4,7] ***
 -35  72 -60 -96  -3  13 -67
  86  55 -58 -58 -25  83  79
 -13  54  94 -87 -39   7  67
 -64 -87  41  22  38  25  33

*** Массив, сортированный по колонкам ***
 -64 -87 -60 -96 -39   7 -67
 -35  54 -58 -87 -25  13  33
 -13  55  41 -58  -3  25  67
  86  72  94  22  38  83  79

*** Созданный массив ***
  79  83  38  22  94  72  86
  67  25  -3 -58  41  55 -13
  33  13 -25 -87 -58  54 -35
 -67   7 -39 -96 -60 -87 -64
0,0(0 оценок)
Ответ:
burcevyuriy
06.06.2022 11:40
Когда человек слышит слова «модель» и «моделирование», перед его мысленным взором обычно пробегают картинки из его детства: уменьшенные копии автомобилей и самолетов, глобус, манекен, макеты зданий... Эти и многие другие вещи часто отражают какие-то общие свойства или функции настоящих предметов или объектов, только в более упрощенном виде. Используя такие модели, можно проще объяснить особенности оригинала. Информационная модель, примеры которой наглядно и понятно объясняют многие сложные для понимания процессы, также подчиняется основным требованиям моделирования. Цели Вышесказанное может привести нас к такому выводу: модели, являясь подобием реальных предметов или процессов, не должны отображать все свойства оригиналов, а только те характеристики, которые в определенной ситуации более востребованы для их применения. Нет необходимости отображать все многообразие свойств объекта — это может привести к усложнению модели и неудобству ее использования. Поэтому очень важно понимать, с какой целью была создана модель, какие ее параметры должны быть отражены в данном конкретном случае. При моделировании необходимо строго придерживаться такой логической цепочки: «объект — цель — модель»
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота