Portaler
면접 대비시간 제한1초메모리 제한1024 MB
각 노드가 다른 노드 하나를 가리키는 함수 그래프에서 s에서 e까지 가는 데 필요한 이동 횟수, 또는 도달할 수 없으면 -1을 답하는 질의를 처리합니다.
문제
Det nya företaget Sveriges Portaltrafik vill revolutionera hur svenska pendlare tar sig runt i landet. Företaget har lagt fram ett banbrytande förslag på hur ett portalsystem ska byggas i Sverige, för att ersätta tåg, flyg och busstrafik med bränslesnåla portaler. Regeringen har nu fått i uppdrag att granska förslaget i detalj, och vädjar till svenska elitprogrammerare om hjälp. Det är här du kommer in i bilden.
Du har fått ta del av en ritning av portalsystemet för att analysera det. Portalsystemet består av portaler utplacerade på olika platser i landet. Varje portal har en viss destinationsportal . Det betyder att varje gång man går in i så kommer man ut ur . Notera att man inte nödvändigtvis kommer tillbaka till när man går in i . Sveriges Portaltrafiks nya idé är att genom att låta resenärer gå i en portal och sedan upprepade gånger gå in i portalen man dyker upp vid så kommer man snabbt kunna ta sig runt i landet.
Regeringen vill nu veta för ett antal givna start- och slutportaler och hur många gånger man behöver gå in i portalen man dyker upp vid för att ta sig från till -- eller om det ens är möjligt. För varje sådan förfrågning ska du svara med antalet gånger man behöver gå in i portalerna för att ta sig från till . Om det är omöjligt så ska du svara .
Hjälp regeringen!
입력
På första raden i indata står heltalet , antalet portaler som kommer att placeras ut i landet. Sedan följer rader med tal som beskriver att portalen på rad leder till portal . Portalerna är ett-indexerade (den lägsta har nummer 1, den högsta har nummer ), och kommer i ordning från till i indata.
Sedan följer en rad med ett heltal , antalet förfrågningar som du måste svara på. Efter det följer rader med två heltal . Dessa tal beskriver nummer på en startportal och en slutportal , och ditt uppdrag är att svara på hur många gånger man behöver gå igenom portalerna för att ta sig till när man börjar vid . För varje förfrågan gäller .
출력
Du ska skriva ut rader, ett tal per förfrågan: antalet gånger man behöver gå igenom portalerna för att ta sig från den givna startportalen till slutportalen. Om det är omöjligt så skriver du ut . Skriv ut svaret för varje förfrågan på en separat rad.
제한
힌트

En illustration av Sample Input 1.
Nätverket i exempelfallet ser ut som i figuren. Vi får tre stycken förfrågningar. Den första undrar hur många gånger vi behöver gå in i portalerna när vi börjar vid och vill hamna vid . Eftersom man direkt hamnar vid när man går in i så är svaret . För att ta sig från till så krävs tre hopp. För den sista förfrågan är svaret , eftersom vi aldrig kan ta oss från till , oavsett hur länge vi går igenom portalerna.