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

Ёлка для енота В стране енотов есть n городов, расположенных в ряд. Еноты любят гигантские ёлки, каждую из которых они устанавливают так, что она накрывает города с номерами в отрезке чётной длины от l до r включительно.

Ёлочным треугольником последовательности b1, ..., bk чётной длины назовём набор последовательностей Ti. Первая последовательность совпадает с данной (T1 = b1, ..., bk), а каждая из оставшихся получена удалением первого и последнего элемента из предыдущей (Ti = bi, ..., bk - i + 1). Например, ёлочный треугольник последовательности 1, 2, 3, 4, 5, 6 выглядит так:

Ёлкой последовательности c1, ..., ck чётной длины называется последовательность ёлочных треугольников последовательностей S1, ..., Sk/2, где Si = ci, ..., ck - i + 1. При этом центр каждого треугольника совпадает с центром ёлки. Например, ёлка последовательности 1, 2, 3, 4, 5, 6 выглядит так:

В каждом городе есть свой вид украшений: в i-м городе красота украшений равна ai. Когда еноты устанавливают гигантскую ёлку, накрывающую города с номерами в отрезке [l, r], то каждый город под этой ёлкой вешает свои украшения на все позиции в ёлке, под которыми этот город находится. Например, если накрыто шесть городов, то четвёртый накрытый город вешает украшения на все позиции, обозначенные четвёркой на рисунке выше.

Красота ёлки - сумма значений красоты каждого использованного украшения.

Вам даны значения красоты украшений, используемых в каждом городе, и описания k гигантских ёлок, которые ставили еноты. Енот Дмитрий хочет работать аналитиком, и в качестве тестового задания ему предложили упорядочить данный вам список из ёлок по возрастанию значений красоты. С сортировкой он справится и сам, а найти значения красоты каждой ёлки он попросил вас.

Поскольку красота ёлки может быть очень большой, достаточно найти её значение по модулю 998244353.

Формат входных данных

В первой строке задано число n (2 ≤ n ≤ 1000000) - число городов.

Во второй строке через пробел заданы n чисел a1, a2, ..., an (1 ≤ ai ≤ 109) - красота украшений, используемых в каждом из городов.

В третьей строке задано число k (1 ≤ k ≤ 1000000) - число ёлок.

В i-й из последующих k строк содержатся два числа l и r (1 ≤ l < r ≤ n) - номера первого и последнего городов, которые украшают ёлку с номером i. Гарантируется, что этот диапазон чётной длины, то есть (r - l + 1) делится на 2.

Формат результата

Необходимо вывести k строк, i-я из которых содержит суммарную красоту украшений на i-й ёлке по модулю 998244353.

Примеры

Входные данные
6
1 2 3 4 5 6
3
1 6
1 4
2 5
Результат работы
70
20
28
Входные данные
6
3 1 2 2 1 2
2
2 5
1 4
Результат работы
14
14
Примечания

Система оценки:

Решения, верно работающие при n, k ≤ 40, будут получать не менее 20% . Решения, верно работающие при n, k ≤ 5000, будут получать не менее 50% .
Можете решить это задание и отдельно написать на каком языке программирования вы это решали, буду очень блогадарен


Ёлка для енота В стране енотов есть n городов, расположенных в ряд. Еноты любят гигантские ёлки, каж

Показать ответ
Ответ:
еклвла838
еклвла838
13.11.2022 03:35

//Задан одномерный массив, заполненный 15-тью случайными целыми числами из интервала от -20 до 20.  

//Составь программу, выполняющую следующие действия: Заполнение массива, вывод на экран всех элементов исходного массива в строчку через пробел,  

//сортировка элементов массива по возрастанию, вывод полученного в результате массива на экран с новой строки через пробел.  

program massiv;

var m:array[1..15] of integer;

   i,j:byte;

   t:integer;

   

BEGIN

//заполнение случайными числа в диапазоне [-20;20]

//random(41) выдает случ. значение от 0 до 40, если вычесть -20 с концов этого отрезка получится от -20 до 20

for i:=1 to 15 do m[i]:=random(41)-20;

//вывод  полученного массива на экран

for i:=1 to 15 do write(m[i],' ');

writeln;//переход на следующую строку

//сортировка пузырковым методом

for i:=1 to 14 do

    for j:=i+1 to 15 do

        if (m[i]>m[j]) then begin

          t:=m[i]; m[i]:=m[j]; m[j]:=t;//обмен элементов массива местами

        end;

writeln('Остортированный массив');

//вывод сортированного массива на экран

for i:=1 to 15 do write(m[i],' ');

 

 

END.

Объяснение:

0,0(0 оценок)
Ответ:
applegamm
applegamm
14.01.2021 10:11
1. Для того, чтобы текст был более восприимчив и понятен.
2. Из интернета, архива, галлереи.
3. Чтобы изменить способ размещения рисунка, следует щелкнуть на нём правой кнопкой мыши и выбрать в контекстном меню пункт Формат рисунка.
4. Левая кнопка мыши, нажать на вставить. Или же выбрать в верхнем левом углу выбрать файл и вставить.
5. Нажать два раза правой кнопкой мыши.
6. CTRL + C, CTRL + V. Или же левой кнопкой мыши нажать на рисунок и выбрать пунк: копировать.
7. Левой кнопкой мыши нажать на рисунок и выбрать пункт удалить. Или же нажать на клавишу Del.
8. В разделе Работа с рисунками на вкладке Формат в группе Изменение нажмите кнопку Сжать рисунки. Чтобы выполнить сжатие только для выбранных, а не для всех рисунков в документе, установите флажок Применить только к этому рисунку.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота