trang chủ / đề bài / dhbb25_dx34_11_c

Du lịch VPL

Đề bài

Mô tả

Khu du lịch VPL có N địa điểm tham quan, giữa hai địa điểm kề nhau luôn luôn có xe trung chuyển để chở khách du lịch. Để đi từ địa điểm A đến địa điểm B kề nhau bằng xe trung chuyển, khách du lịch sẽ tốn một vé di chuyển. Để di chuyển đến tất cả các địa điểm tham quan trong khu du lịch VPL, An phải mua D tấm vé xe trung chuyển và được nhân viên bán vé gửi cho một bản đồ mô tả các địa điểm trong khu du lịch. Nếu có thể bắt đầu từ bất kỳ địa điểm nào, với D tấm vé xe trung chuyển, An có thể di chuyển bao nhiêu hành trình tham quan khu du lịch. Em hãy giúp An giải bài toán này nhé!

Bản đồ gồm N−1 cặp địa điểm kề nhau và từ một địa điểm luôn đi được đến mọi địa điểm khác, tức là bản đồ là một cây. Khoảng cách từ địa điểm u đến địa điểm v là số chuyến xe (số vé) trên đường đi duy nhất từ u đến v.

Yêu cầu: Hãy đếm số lượng cặp địa điểm (u,v) sao cho khoảng cách từ địa điểm u đến địa điểm v đúng bằng D chuyến xe. Coi như cặp địa điểm (u,v) và (v,u) là một.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên N và D là số lượng địa điểm và số lượng vé xe trung chuyển (1≤N≤106, 1≤D≤1000).
  • N−1 dòng tiếp theo, mỗi dòng chứa hai số nguyên x và y thể hiện cho hai địa điểm kề nhau có đường đi (1≤x,y≤N, x≠y). Mỗi cặp số nguyên (x,y) chỉ xuất hiện một lần.

Dữ liệu ra

Ghi ra một số nguyên duy nhất là số lượng cặp địa điểm có độ dài đường đi đúng bằng D chuyến xe. Nếu không có kết quả thoả mãn ghi ra số 0.

Ràng buộc

  • 1≤N≤106, 1≤D≤1000.
  • Các cặp địa điểm kề nhau tạo thành một cây.
  • Có 60% số test ứng với 60% số điểm có 1≤N≤103.
  • 40% số test còn lại ứng với 40% số điểm không có ràng buộc gì thêm.

Ví dụ

Input Output Giải thích
9 2
1 2
1 3
1 4
2 5
3 6
3 7
6 8
7 9
9 Các cặp địa điểm thỏa mãn là: (1,5), (1,6), (1,7), (2,3), (2,4), (3,4), (3,8), (3,9), (6,7).
8 3
1 2
2 3
3 4
2 5
5 6
1 7
7 8
7 Ví dụ bổ sung. Các cặp thỏa mãn là: (1,4), (1,6), (2,8), (3,6), (3,7), (4,5), (5,7).
4 4
1 2
1 3
3 4
0 Ví dụ bổ sung. Đường đi dài nhất là 2−1−3−4 với 3 chuyến xe, không có cặp nào cách nhau 4 chuyến.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0