Đếm số theo ràng buộc tần suất chữ số

Đề bài

Mô tả

Cho số nguyên dương n và mảng a gồm 10 số nguyên không âm, đánh số từ 0 đến 9. Hãy đếm số lượng số nguyên dương thỏa mãn đồng thời các điều kiện sau:

  • Số có độ dài (số chữ số) không vượt quá n.
  • Số không có chữ số 0 ở đầu.
  • Với mọi chữ số i (0i9), chữ số i xuất hiện trong biểu diễn thập phân của số đó ít nhất ai lần.

Vì kết quả có thể rất lớn, hãy in ra phần dư của nó khi chia cho 109+7.

Dữ liệu vào

  • Dòng đầu chứa một số nguyên n.
  • Dòng thứ hai chứa 10 số nguyên a0,a1,,a9 cách nhau bởi dấu cách.

Dữ liệu ra

  • In ra một số nguyên duy nhất là phần dư của đáp án khi chia cho 109+7.

Ràng buộc

  • 1n100
  • 0ai100 với mọi 0i9

Ví dụ

Input Output Giải thích
1
0 0 0 0 0 0 0 0 0 1
1 Cần ít nhất một chữ số 9 và độ dài không quá 1. Chỉ có số 9 thỏa mãn.
2
1 1 0 0 0 0 0 0 0 0
1 Cần ít nhất một chữ số 0 và một chữ số 1, độ dài không quá 2. Chỉ có số 10 thỏa mãn (số 01 không hợp lệ vì có chữ số 0 ở đầu).
3
1 1 0 0 0 0 0 0 0 0
36 Cùng ràng buộc như ví dụ trên nhưng cho phép độ dài đến 3. Có 36 số thỏa mãn, trong đó có 10, 110, 210, 120, 103,

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0