#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ó hành tinh đánh số từ đến . Bạn bắt đầu tại hành tinh .
Có loại gói cổng dịch chuyển một chiều:
1 v u w: mở một cổng từ đến với chi phí .2 v l r w: từ có thể mở cổng đến bất kỳ hành tinh , mỗi lần dùng gói tốn .3 v l r w: từ bất kỳ hành tinh có thể mở cổng đến , mỗi lần dùng gói tốn .
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ừ đến hành tinh đó.
Input
Dòng đầu chứa ba số nguyên .
Trong dòng tiếp theo:
- nếu , dòng có dạng
1 v u w; - nếu hoặc , dòng có dạng
t v l r w.
Output
In số nguyên. Số thứ là chi phí nhỏ nhất để đi từ hành tinh đến hành tinh , hoặc -1 nếu không thể đến.
Subtask
Trong tất cả các Subtask: ; ; ; .
- Subtask 1 — 10%: Chỉ có truy vấn loại .
- Subtask 2 — 20%: Chỉ có truy vấn loại và loại .
- Subtask 3 — 30%: ; ; 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 , chi phí nhỏ nhất lần lượt đến các hành tinh là , nên output là 0 28 12.