- Описание
- Отправленные решения
22. Вложенные циклы
Вам дан кусок следующего кода, состоящий из «пирамиды» циклов. Глубина пирамиды, то есть количество циклов, равно . Имя переменной на -м уровне соответствует -й букве латинского алфавита (a, b, c и так далее).
Например, приведённый ниже фрагмент соответствует , начинается с переменной и заканчивается переменной .
res = 0
for a in range(l_1, r_1+1):
for b in range(l_2, r_2+1):
for c in range(l_3, r_3+1):
...
for n in range(l_14, r_14+1):
res = (res + 1) % 1000000007
Диапазон каждого цикла состоит из двух границ . Хотя бы одна из двух границ обязательно будет числом от 1 до (возможно, обе). Также одна из двух границ может быть равна одному из значений предыдущих переменных. Например, для возможен такой тест:
for a in range(1, 11):
for b in range(a, 13):
for c in range(5, b+1):
res = (res + 1) % 1000000007
Выведите конечное значение переменной после выполнения программы.
Формат ввода
В первой строке вводится число () количество циклов в пирамиде.
В следующих строках вводится чеpез пробел. Введенные значения могут быть либо натуральными числами до , либо строчной латинской буквой (ASCII-символ в диапазоне ,.
Формат вывода
Выведите одно число — ответ на задачу.
Ограничения
Ограничение времени
1 с
Ограничение памяти
256 МБ
Пример 1
3
1 10
a 12
5 b
325