Logo
(追記) (追記ここまで)

20853번 - Efterlyst 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB124457.143%

문제

Poliskonstapel Acsel behöver din hjälp med ett brådskande ärende, nämligen att fånga den farliga brottsligen Waxel. Waxel gömmer sig någonstans i en stad som består av $N$ olika platser, numrerade mellan 1ドル$ och $N,ドル med $M$ dubbelriktade vägar som var och en ansluter två olika platser. Han befann sig länge på en viss plats $X$ (det är okänt vilken), men sedan så flyttade han sig till en annan plats $Y$ (som vi inte heller känner till) genom att färdas längs en sekvens av vägar.

Polisen har samlat in $K$ stycken vittnesmål från personer som såg Waxel. Därför vet de att Waxel besökte platserna $a_1, a_2, \dots, a_K$ på vägen från $X$ till $Y$ (det är även möjligt att $a_i = X$ eller $a_i = Y$ för något $i$). Däremot vet de inte i vilken ordning platserna besöktes. Waxel kan dessutom ha besökt fler än dessa $K$ platser på vägen från $X$ till $Y$.

Din uppgift är nu att hjälpa polisen att hitta de platser som möjligtvis kan vara $Y,ドル under förutsättning att Waxel tog en kortaste sekvens av vägar (Detta innebär att summan av längderna av de vägar som Waxel färdades längs är så liten som möjligt.) från $X$ till $Y$. Det är möjligt att det inte finns några sådana platser alls, om vittnesmålen inte stämmer överens med någon kortaste väg.

입력

Den första raden innehåller tre heltal:

  • antalet platser i staden, $N$ (2ドル \leq N \leq 2\cdot 10^5$),
  • antalet vägar i staden, $M$ (1ドル \leq M \leq 2 \cdot 10^5$), och
  • antalet vittnesmål, $K$ (1ドル \leq K \leq N$).

Den andra raden innehåller de $K$ olika heltalen $a_1, \dots, a_K$ (1ドル \leq a_i \leq N$), de platser som Waxel besökte.

De $M$ följande raderna beskriver de olika vägarna i staden. Den $i$:te raden innehåller de tre heltalen $u_i,ドル $v_i$ (1ドル \leq u_i \not= v_i \le N$) och $w_i$ (1ドル \leq w_i \leq 10^9$), vilket innebär att den $i$:te vägen förbinder platserna $u_i$ och $v_i$ och har längd $w_i$ meter. Det är garanterat att det går att ta sig mellan vilka två platser som helst genom att färdas längs en sekvens av vägar och att det mellan varje par av platser finns högst en väg som förbinder platserna.

출력

På den första raden ska du skriva ut antalet noder som kan vara $Y$. Notera att detta tal kan vara 0ドル$.

På den andra raden ska du skriva ut samtliga noder som kan vara $Y$. Dessa ska skrivas ut separerade av blanksteg i ökande ordning.

제한

예제 입력 1

6 6 2
1 5
1 2 1
2 3 1
3 4 1
4 5 1
5 6 1
6 1 1

예제 출력 1

4
1 2 4 5

예제 입력 2

4 3 3
2 3 4
1 2 3
1 3 5
1 4 4

예제 출력 2

0

예제 입력 3

7 9 2
5 1
2 3 3
2 1 1
3 1 2
3 5 2
1 4 1
5 4 3
5 6 5
5 7 2
6 7 1

예제 출력 3

5
1 2 5 6 7

예제 입력 4

5 4 2
2 4
2 5 1
2 1 1
1 4 1
4 3 1

예제 출력 4

4
2 3 4 5

힌트

I exempel 1ドル$ är platserna 1,2,4,5ドル$ möjliga mål för Waxel. För att komma till 2ドル$ hade han kunnat ta vägen 5ドル-6-1-2$.

I exempel 2ドル$ finns det ingen kortaste väg som passerar de givna noderna. Svaret är alltså 0ドル$.

I exempel 3ドル$ finns det ganska många möjligheter. För att komma till 2ドル$ hade Waxel t.ex. kunnat ta vägen 6ドル-7-5-3-1-2$.

출처

Olympiad > Swedish Olympiad in Informatics > 2019 > Programming Camp A번

  • 문제를 만든 사람: Nils Gustafsson
(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /