#937. ALLEY - Lối đi

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: Trình chấm ngoài
Đưa lên bởi: Trùm CUỐI

Đề bài

Khu du lịch sinh thái có n điểm tham quan đánh số từ 1 đến n . Có k lối mòn nối các điểm này với nhau thành một mạng lưới du lịch, cho phép khách từ một điểm, theo các lối mòn có thể tới điểm tham quan bất kỳ khác từ nơi mình đang đứng. Đường thứ j có độ dài d_j , nối hai điểm u_j v_j .

Để nâng cấp chất lượng phục vụ người ta quyết định lát đá một số lối đi sao cho từ một điểm tham quan có thể tới được điểm khác bằng đường đã lát đá. Số phiến đá khai thác được là m tấm, mỗi tấm có độ dài đơn vị. Như vậy để lát đoạn đường độ dài x cần đúng x tấm. Theo các lối này du khách chỉ có thể đi bộ. Ban Quản lý khu sinh thái muốn có thêm một số đường rộng có thể chạy minibus. Mỗi đường rộng cần số đá gấp p lần so với lát cho đường bộ. Mọi người muốn có được số đường rộng càng nhiều càng tốt nhưng vẫn phải đảm bảo từ một điểm tham quan có thể tới được điểm khác bằng đường đã lát.

Hãy xác định một cách lát đường thỏa mãn các yêu cầu đã nêu. Nếu không có cách lát thì đưa ra thông báo Impossible.

Dữ liệu:

  • Dòng đầu tiên chứa bốn số nguyên n, k, m p\ (1 \le n, k\le 10^5, 1 \le m\le 10^9,1 \le p\le 10^3) ;
  • Dòng thứ i trong k dòng sau chứa ba số nguyên u_i, v_i d_i\ (1 \le u_i, v_i\le n, 1 \le d_i\le 10^6) . Không có đoạn đường nào có hai điểm đầu và cuối trùng nhau, giữa hai điểm khác nhau có không quá một đoạn đường nối trực tiếp. Các đường được đánh số từ 1 đến k theo trình tự nhập.

Kết quả:

  • Nếu không có cách lát thì đưa ra thông báo Impossible. Nếu có cách lát thì dòng đầu tiên đưa ra hai số nguyên p q – số đường thường và đường rộng. Dòng thứ hai đưa ra p số nguyên – các đường lát thường, dòng thứ ba đưa ra q số nguyên – các đường lát rộng.

Ví dụ:

Dữ liệu:

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

Kết quả:

1 2
2
3 4

Ghi chú: Nếu chỉ trả lời đúng được dòng thứ nhất thì được 50\% số điểm của test.