#760. Lâu đài hắc ám (CASTLE)

Bộ nhớ: 512 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: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Bạn biết rằng lâu đài hắc ám có N căn phòng, M lối đi hai chiều có thể xây dựng, cùng với độ dài của mỗi lối đi. Lâu đài có dạng hình cây và thỏa mãn các điều kiện sau:

Gọi D_i là độ dài đường đi ngắn nhất từ phòng số 1 đến phòng số i nếu tất cả các lối đi đều được xây dựng. Gọi S_i là độ dài đường đi từ phòng số 1 đến phòng số i trong lâu đài hình cây thực tế được xây dựng. Yêu cầu với mọi số nguyên i ( 1\le i\le N ), ta có S_i= D_i .

Bạn muốn biết có bao nhiêu phương án xây dựng lâu đài khác nhau. Tất nhiên, bạn chỉ cần xuất kết quả sau khi lấy phần dư cho 2^{31} -1 .

Dữ liệu:

  • Dòng đầu tiên là hai số nguyên cách nhau bởi dấu cách N, M .
  • Từ dòng thứ 2 đến dòng thứ M+1 , mỗi dòng gồm 3 số nguyên cách nhau bởi dấu cách x, y, l : biểu thị độ dài lối đi giữa phòng x và phòng y l .

Kết quả:

  • Một số nguyên: số lượng phương án xây dựng lâu đài khác nhau sau khi lấy phần dư cho 2^{31} -1 .

Ví dụ:

Dữ liệu:

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

Kết quả:

6

Giới hạn: 1\le N\le 1000 , 1\le M\le \frac{N(N-1)}{2} , 1\le l\le 200 .