#G00018. Di sản (Legacy)

Di sản (Legacy)

Di sản (Legacy)

Nguồn: Codeforces

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

Đề bài

Có nn hành tinh đánh số từ 11 đến nn. Bạn bắt đầu tại hành tinh ss.

Có qq loại gói cổng dịch chuyển một chiều:

  1. 1 v u w: mở một cổng từ vv đến uu với chi phí ww.
  2. 2 v l r w: từ vv có thể mở cổng đến bất kỳ hành tinh u∈[l,r]u\in[l,r], mỗi lần dùng gói tốn ww.
  3. 3 v l r w: từ bất kỳ hành tinh u∈[l,r]u\in[l,r] có thể mở cổng đến vv, mỗi lần dùng gói tốn ww.

Mỗi lần mua một gói chỉ sử dụng được một lần, nhưng có thể mua lại cùng loại gói nhiều lần.

Với mỗi hành tinh, hãy tìm số tiền nhỏ nhất cần thiết để đi từ ss đến hành tinh đó.

Input

Dòng đầu chứa ba số nguyên n,q,sn,q,s.

Trong qq dòng tiếp theo:

  • nếu t=1t=1, dòng có dạng 1 v u w;
  • nếu t=2t=2 hoặc t=3t=3, dòng có dạng t v l r w.

Output

In nn số nguyên. Số thứ ii là chi phí nhỏ nhất để đi từ hành tinh ss đến hành tinh ii, hoặc -1 nếu không thể đến.

Subtask

Trong tất cả các Subtask: 1≤n,q≤1051\le n,q\le10^5; 1≤s,v,u≤n1\le s,v,u\le n; 1≤l≤r≤n1\le l\le r\le n; 1≤w≤1091\le w\le10^9.

  • Subtask 1 — 10%: Chỉ có truy vấn loại 11.
  • Subtask 2 — 20%: Chỉ có truy vấn loại 11 và loại 22.
  • Subtask 3 — 30%: n≤2000n\le2000; q≤2000q\le2000; có thể xuất hiện cả ba loại truy vấn.
  • Subtask 4 — 40%: Không có điều kiện bổ sung.

Ví dụ

Input

3 5 1
2 3 2 3 17
2 3 2 2 16
2 2 2 3 3
3 3 1 1 12
1 3 3 17

Output

0 28 12

Giải thích

Từ hành tinh 11, chi phí nhỏ nhất lần lượt đến các hành tinh 1,2,31,2,3 là 0,28,120,28,12, nên output là 0 28 12.