당신의 인생

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

꿈을 이루는 과정에서 일어날 수 있는 상황의 관계를 그래프로 나타낸다. 수많은 상황을 NN개로 압축하고 1번부터 NN번까지 번호를 붙였다. 당신은 지금 1번 상황에 있고, NN번 상황이 당신이 이루려는 유일한 꿈이다.

상황은 당신의 선택에 따라 바뀐다. 선택할 수 있는 변화는 모두 MM개이며 xx, yy 형태로 주어진다. 이는 xx번 상황에 있을 때 yy번 상황으로 가는 선택을 할 수 있다는 뜻이고, x<yx < y가 보장된다.

당신은 꿈을 이룰 수 있는가? 이룰 수 있다면 상황이 바뀌는 횟수를 최소로 줄였을 때 몇 번 만에 꿈을 이루는가?

입력

첫째 줄에 자연수 NNMM이 공백으로 구분되어 주어진다. 1N1000001 \le N \le 100000이고 0M2000000 \le M \le 200000이다.

다음 MM개의 줄에 자연수 xxyy가 공백으로 구분되어 주어진다. 1x<yN1 \le x < y \le N이다. 같은 변화가 두 번 이상 주어질 수 있다.

출력

꿈을 이룰 수 있으면 필요한 상황 변화 횟수의 최솟값을 출력하고, 이룰 수 없으면 -1을 출력한다.

힌트

첫 번째 예제에서는 1번에서 2번으로, 다시 2번에서 4번으로 상황을 바꾸면 두 번 만에 꿈을 이룬다.