Dãy số may mắn
Đề bài
Mô tả
Một số nguyên dương được gọi là số may mắn nếu biểu diễn thập phân của nó chỉ gồm các chữ số và . Ví dụ: , , là số may mắn; còn , , thì không.
Cho một dãy gồm số nguyên dương. Bạn cần thực hiện thao tác thuộc hai loại:
add l r d— cộng thêm vào mọi phần tử có chỉ số trong đoạn .count l r— đếm xem trong đoạn có bao nhiêu phần tử là số may mắn. Mỗi vị trí được tính riêng, nên nếu cùng một số may mắn xuất hiện ở nhiều vị trí thì nó được đếm nhiều lần.
Dữ liệu đảm bảo rằng sau khi thực hiện tất cả các thao tác add, không phần tử nào của dãy vượt quá .
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và — số phần tử của dãy và số thao tác.
- Dòng thứ hai chứa số nguyên dương, mỗi số không vượt quá .
- dòng tiếp theo, mỗi dòng chứa một thao tác theo đúng định dạng
add l r dhoặccount l r.
Dữ liệu ra
Với mỗi thao tác loại count, in ra trên một dòng riêng số lượng số may mắn trong đoạn tương ứng.
Ràng buộc
- Mỗi phần tử ban đầu không vượt quá , và sau tất cả các thao tác
addcũng không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 6 2 3 4 count 1 3 count 1 2 add 1 3 2 count 1 3 add 2 3 3 count 1 3 |
1 0 1 1 |
Ban đầu dãy là 2 3 4, chỉ có may mắn. Sau add 1 3 2 dãy thành 4 5 6, vẫn chỉ có . Sau add 2 3 3 dãy thành 4 8 9, đáp án vẫn là 1. |
| 4 5 4 4 4 4 count 1 4 add 1 4 3 count 1 4 add 2 3 40 count 1 4 |
4 4 4 |
Cả 4 phần tử đều bằng . Sau add 1 4 3 dãy thành 7 7 7 7, cả 4 vẫn may mắn. Sau add 2 3 40 dãy thành 7 47 47 7, và cũng là số may mắn. |
Bình luận