Предмет: Информатика, автор: regressor04

Новый маршрут для трекинга

Сейчас самое время планировать новые трекинговые маршруты.


Опишем холмистую местность массивом из n чисел. Высота i-го холма равна hi. Маршрут должен идти по k подряд идущим холмам (учитывая тот холм, с которого маршрут будет начинаться). Немолодым туристам не очень нравится, когда приходится много раз подниматься в гору — переходить с более низкого холма на более высокий.


Помогите туристам определиться с выбором маршрута — напишите программу, которая отвечает на запросы о количестве переходов с более низкого холма на более высокий на данном маршруте.


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


В первой строке даны натуральные числа n, m (2≤n,m≤2⋅105) — общее количество холмов и количество запросов соответственно.


Во второй строке даны n целых чисел hi(1≤hi≤105) — высоты холмов.


В следующих m строках записаны пары чисел lj и rj (1≤li≤rj≤n) — запросы на количество переходов с более низкого холма на более высокий на маршруте с началом в холме lj и завершением в rj.


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


Выведите m чисел — ответы на запросы.


Примеры

Ввод

2 3

2 37

1 2

2 2

1 1

Вывод

1

0

0

Решить на C++

Ответы

Автор ответа: MaksMega
2

Ответ:

лол вроде же несложная задачка

Объяснение:

#include <bits/stdc++.h>

using namespace std;

int main () {

   int n,m;

   cin >> n >> m;

   vector <int> a(n), p(n, 0);

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

       cin >> a[i];

   if (a[0] < a[1]) p[1] = 1;

   for (int i = 2; i < n; i++) {

       if (a[i - 1] < a[i]) p[i] = 1;

       p[i] += p[i-1];

   }

   for (int i = 0; i < m; i++) {

       int l, r;

       cin >> l >> r;

       cout << p[r - 1] - p[l - 1] << endl;

   }

}


MaksMega: ты же тоже делаешь сириус?
Googlable: Можешь, пожалуйста, на Питоне код подсказать
MaksMega: блин сори я не знаю питон
MaksMega: ты сделал(а) 8????????
Похожие вопросы
Предмет: Русский язык, автор: УлыбкаD
Предмет: Математика, автор: Аноним
Предмет: Английский язык, автор: Котя6661