10867. Додому електричками


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python

Одна із команд-учасниць олімпіади вирішила повернутися додому електричками. При цьому хлопці хочуть потрапити додому якомога раніше. На жаль, не всі електрички йдуть від міста, де проводиться олімпіада, до станції, де живуть хлопці. І, що ще прикро, не всі електрички, які йдуть повз їхню станцію, зупиняються на ній (як і взагалі, електрички зупиняються далеко не на всіх станціях, повз які вони йдуть)

Всі станції на лінії пронумеровані числами від 1 до \(N\). При цьому станція номер 1 знаходиться в місті, де проводиться олімпіада, і в момент часу 0 хлопці приходять на станцію. Станція, на яку потрібно потрапити хлопцям, має номер \(E\).

Напишіть програму, яка за розкладом руху електричок обчислює мінімальний час, коли хлопці можуть опинитися вдома.

Формат вхідних даних

У вхідному потоці записані спочатку числа \(N\) (\(2≤𝑁≤100\) ) та \(E\) (\(2≤𝐸≤𝑁 \)).

Потім записано число \(M\) (\(0≤𝑀≤100\)), що позначає кількість рейсів електричок.

Далі йде опис \(M\) рейсів електричок. Опис кожного рейсу електрички починається з числа \(K_i\) (\(2≤𝐾≤𝑁 \)) — кількості станцій, на яких вона зупиняється, а далі слідує \(K_i\) пар чисел, перше число кожної пари задає номер станції, друге — час, коли електричка зупиняється на цій станції ( час виражається цілим числом діапазону від 0 до \(10^9\)). Станції всередині одного рейсу впорядковано в порядку зростання часу. Протягом одного рейсу електричка постійно рухається в одному напрямку — або від міста, або до міста.

Формат вихідних даних

У вихідний потік виведіть одне число - мінімальний час, коли хлопці зможуть опинитися на своїй станції. Якщо існуючими рейсами електричок вони не зможуть дістатися, виведіть –1.

Приклад вхідних даних

5 2
2
4 1 1 3 2 4 10 5 20
3 5 10 4 15 2 40

Приклад вихідних даних

40

Коментарі

Ще немає коментарів.