#G00001. Đường đi ngắn nhất từ một nguồn, trọng số không âm

Đường đi ngắn nhất từ một nguồn, trọng số không âm

Đường đi ngắn nhất từ một nguồn, trọng số không âm (Single Source Shortest Path, Non-Negative Weights)

Nguồn: Kattis

Phiên bản: Phước Hưng OJ Extended

Đề bài

Cho một đồ thị có hướng gồm nn đỉnh, được đánh số từ 00 đến n−1n-1, và mm cạnh có trọng số không âm.

Mỗi cạnh được mô tả bởi ba số nguyên uu, vv, ww, biểu thị một cạnh có hướng từ đỉnh uu đến đỉnh vv với trọng số ww.

Một đỉnh ss được chọn làm đỉnh xuất phát. Có qq truy vấn, mỗi truy vấn cho một đỉnh vv.

Với mỗi truy vấn, hãy xác định tổng trọng số nhỏ nhất của một đường đi từ ss đến vv.

Nếu không tồn tại đường đi từ ss đến vv, cần thông báo rằng đỉnh vv không thể đạt tới từ ss.

Input

Dòng đầu tiên chứa bốn số nguyên nn, mm, qq, ss, lần lượt là số đỉnh của đồ thị, số cạnh, số truy vấn và đỉnh xuất phát.

Trong mm dòng tiếp theo, mỗi dòng chứa ba số nguyên uu, vv, ww, mô tả một cạnh có hướng từ đỉnh uu đến đỉnh vv với trọng số ww.

Trong qq dòng tiếp theo, mỗi dòng chứa một số nguyên vv, biểu thị một truy vấn yêu cầu tìm khoảng cách nhỏ nhất từ đỉnh ss đến đỉnh vv.

Output

Với mỗi truy vấn, in ra một dòng chứa tổng trọng số nhỏ nhất của một đường đi từ đỉnh ss đến đỉnh được truy vấn.

Nếu không tồn tại đường đi như vậy, in ra:

Impossible

Các kết quả được in theo đúng thứ tự xuất hiện của các truy vấn trong dữ liệu vào.

Subtask

  • Subtask 1 — 10%: 1≤n≤91 \le n \le 9; 0≤m≤200 \le m \le 20; 1≤q≤101 \le q \le 10; 0≤s,u,v<n0 \le s,u,v<n; 0≤w≤10000 \le w \le 1000.
  • Subtask 2 — 15%: 1≤n≤2001 \le n \le 200; 0≤m≤30000 \le m \le 3000; 1≤q≤1001 \le q \le 100; 0≤s,u,v<n0 \le s,u,v<n; 0≤w≤10000 \le w \le 1000.
  • Subtask 3 — 20%: 1≤n≤10001 \le n \le 1000; 0≤m≤1040 \le m \le 10^4; 1≤q≤1001 \le q \le 100; 0≤s,u,v<n0 \le s,u,v<n; 0≤w≤10000 \le w \le 1000.
  • Subtask 4 — 25%: 1≤n≤50001 \le n \le 5000; 0≤m≤2⋅1040 \le m \le 2\cdot10^4; 1≤q≤1001 \le q \le 100; 0≤s,u,v<n0 \le s,u,v<n; 0≤w≤10000 \le w \le 1000.
  • Subtask 5 — 30%: 1≤n≤1041 \le n \le 10^4; 0≤m≤3⋅1040 \le m \le 3\cdot10^4; 1≤q≤1001 \le q \le 100; 0≤s,u,v<n0 \le s,u,v<n; 0≤w≤10000 \le w \le 1000.

Ví dụ

Ví dụ 1

Input

4 3 4 0
0 1 2
1 2 2
3 0 2
0
1
2
3

Output

0
2
4
Impossible

Giải thích

Đồ thị có 44 đỉnh, 33 cạnh và đỉnh xuất phát là 00.

Ba cạnh của đồ thị là:

  • từ đỉnh 00 đến đỉnh 11 với trọng số 22;
  • từ đỉnh 11 đến đỉnh 22 với trọng số 22;
  • từ đỉnh 33 đến đỉnh 00 với trọng số 22.

Đối với truy vấn đến đỉnh 00, đỉnh cần đến cũng chính là đỉnh xuất phát nên khoảng cách bằng 00.

Đối với truy vấn đến đỉnh 11, có đường đi trực tiếp:

0→10\rightarrow1

với tổng trọng số bằng 22.

Đối với truy vấn đến đỉnh 22, có đường đi:

0→1→20\rightarrow1\rightarrow2

với tổng trọng số:

2+2=4.2+2=4.

Không tồn tại đường đi có hướng từ đỉnh 00 đến đỉnh 33. Cạnh nối hai đỉnh này có chiều từ 33 đến 00, vì vậy kết quả của truy vấn cuối cùng là Impossible.