EduBrick

I. Подземная система

3000 мс · 256 МБ · всё или ничего

Метро состоит из NN станций и MM линий. Линия ii соединяет станции pip_i и qiq_i, и ею управляет компания cic_i.

Сесть на поезд стоит один бурль. Пересадка на линию той же компании бесплатна, на линию другой компании — снова один бурль.

Найдите наименьшую стоимость проезда от станции 1 до станции NN.

Вершина здесь — не станция, а пара «станция и компания последней линии». Переход стоит ноль, если компания та же, и один иначе. Веса нулевые и единичные — это 0-1 BFS: очередь заменяется дэком, нулевые переходы кладутся в начало, единичные в конец.

Формат ввода

Первая строка содержит числа NN (2≤N≤1052 \le N \le 10^5) и MM (0≤M≤2⋅1050 \le M \le 2 \cdot 10^5).

Далее идут MM строк с тройками pip_i, qiq_i, cic_i (1≤ci≤1061 \le c_i \le 10^6).

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

Одно число — наименьшая стоимость или −1-1.

Примеры

ввод
3 3
1 2 1
2 3 1
3 1 2
вывод
1
ввод
2 0
вывод
-1
Войдите, чтобы отправлять решения.