QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 256 MB Total points: 100

#1648. Работа с забором

Statistics

Фермер Фред хочет изменить дизайн забора своего дома. Забор Фреда состоит из $n$ вертикальных деревянных досок различной высоты. Высота $i$-й доски равна $h_i$ ($1 \le h_i \le n$). Изначально все высоты различны.

Чтобы изменить дизайн забора, Фред выбирает некоторый непрерывный отрезок $[l \dots r]$ досок и «выравнивает» их, подрезая так, чтобы все высоты на этом отрезке стали равны минимальной высоте на этом отрезке. Более конкретно, новые высоты досок на отрезке становятся равны $h'_i = \min\{h_l, h_{l+1}, \dots, h_r\}$ для всех $l \le i \le r$.

Сколько различных дизайнов может получить Фред, применяя эту процедуру несколько (возможно, 0) раз? Поскольку ответ может быть очень большим, выведите его по модулю $10^9 + 7$.

Два дизайна $A$ и $B$ считаются различными, если существует хотя бы одна доска, высота которой в дизайне $A$ отличается от высоты в дизайне $B$.

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

Первая строка входных данных содержит $n$ ($1 \le n \le 3000$) — количество досок в заборе Фреда.

Вторая строка содержит $n$ различных целых чисел $h_i$ ($1 \le h_i \le n$, $1 \le i \le n$) — высоты каждой из досок.

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

Выведите единственное целое число — количество различных возможных дизайнов забора, которые можно получить, по модулю $10^9 + 7$.

Примеры

Пример 1

3
1 3 2

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

4

Пример 2

5
1 2 3 4 5

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

42

Пример 3

7
1 4 2 5 3 6 7

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

124

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.