trang chủ / đề bài / thhv19_clc_11_a

Du khách Falcon

Đề bài

Mô tả

Lào Cai là một vùng đất biên giới tiếp giáp với Trung Quốc, được bao quanh bởi những dãy núi đẹp và hùng vĩ. Từ năm 2018 đến nay, hằng năm Lào Cai đón hàng triệu du khách trong và ngoài nước đến tham quan, điển hình là các khu du lịch nổi tiếng: Sapa, Bắc Hà, Y Tí, ... Trong một lần, du khách Falcon người Anh đến tham quan Lào Cai. Do là sinh viên nên Falcon được bố mẹ cung cấp cho một số tiền là M. Theo tìm hiểu, Falcon thấy Lào Cai có n điểm du lịch, điểm du lịch thứ i có chi phí vào tham quan là ai.

Vì đã lên dự trù về kinh phí, các bạn hãy giúp Falcon tính xem có bao nhiêu cách đi tham quan các khu du lịch Lào Cai sao cho tổng chi phí đúng bằng M. Mỗi điểm du lịch chỉ được tham quan không quá một lần. Một cách đi được xác định bởi tập các điểm du lịch được tham quan: các cách đi gồm cùng một tập địa điểm chỉ được tính là một cách (thứ tự tham quan không quan trọng), còn hai điểm du lịch khác nhau luôn được coi là khác nhau dù có chi phí bằng nhau.

Yêu cầu: Tính số cách đi tham quan các khu du lịch sao cho tổng chi phí đúng bằng M.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên dương n,M (n≤50, M≤2×109).
  • Dòng tiếp theo chứa n số nguyên không âm a1,a2,…,an (0≤ai≤109).

Dữ liệu ra

Ghi một số nguyên duy nhất là số cách đi của Falcon, hoặc in does not exist nếu không tồn tại cách đi nào (khi đó Falcon sẽ phải hủy chuyến du lịch của mình).

Ràng buộc

  • 1≤n≤50.
  • 1≤M≤2×109.
  • 0≤ai≤109.

Subtasks

Điểm được tính theo từng test.

  • 40% số test đầu tiên: n≤20 và M≤105.
  • 30% số test tiếp theo: n≤20 và M≤2×109.
  • 30% số test còn lại: n≤50 và M≤2×109.

Ví dụ

Input Output Giải thích
6 10
6 4 10 10 10 10
5 Tham quan hai điểm 1 và 2 (6+4=10), hoặc chỉ tham quan một trong bốn điểm 3,4,5,6 có chi phí 10. Bốn điểm này khác nhau nên cho 4 cách khác nhau.
3 7
2 4 6
does not exist Ví dụ bổ sung (không có trong đề gốc). Mọi chi phí đều chẵn nên không thể có tổng bằng 7.
4 5
0 5 0 2
4 Ví dụ bổ sung (không có trong đề gốc). Phải tham quan điểm 2; hai điểm 1 và 3 miễn phí, mỗi điểm có thể đi hoặc không, nên có 2·2=4 cách.

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