JOI 2013 - Signboard

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 800 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

JOI quyết định làm một tấm biển hiệu cho cửa hàng.

\(N\) tấm biển hiệu cũ, trên mỗi tấm các chữ cái được viết cách đều nhau. JOI sẽ làm biển hiệu bằng cách xóa một số chữ cái trên một tấm biển cũ. Cậu muốn các chữ cái còn lại, đọc theo thứ tự, tạo thành tên cửa hàng và vẫn nằm cách đều nhau. Mỗi biển hiệu phải được làm từ đúng một tấm biển cũ; không được cắt hoặc nối các tấm biển.

Cho tên cửa hàng và thông tin về \(N\) tấm biển cũ, hãy viết chương trình tính số tấm biển hiệu mà JOI có thể làm được. Nếu có nhiều cách làm biển hiệu từ cùng một tấm biển cũ thì tấm biển đó vẫn chỉ được tính một lần.

Yêu cầu

Tính số tấm biển cũ mà từ đó JOI có thể làm được biển hiệu mang tên cửa hàng.

Dữ liệu vào

Dữ liệu vào gồm \(2+N\) dòng.

  • Dòng đầu tiên chứa số nguyên \(N\) (\(1\le N\le100\)), là số tấm biển cũ.
  • Dòng thứ hai chứa một xâu gồm từ \(3\) đến \(25\) chữ cái tiếng Anh viết thường, là tên cửa hàng.
  • Dòng thứ \(i\) trong \(N\) dòng tiếp theo (\(1\le i\le N\)) chứa một xâu gồm từ \(1\) đến \(100\) chữ cái tiếng Anh viết thường, là xâu được viết trên tấm biển cũ thứ \(i\).

Dữ liệu ra

In ra một dòng chứa một số nguyên là số tấm biển hiệu mà JOI có thể làm được.

Ví dụ 1

Input
4
bar
abracadabra
bear
bar
baraxbara
Output
3

Tên cửa hàng là bar.

  • Tấm biển thứ nhất ghi abracadabra. Có thể làm biển hiệu bằng cách xóa tất cả chữ cái ngoại trừ các chữ ở vị trí thứ \(2\), \(6\)\(10\).
  • Với tấm biển thứ hai, xóa chữ cái thứ \(2\) sẽ được xâu bar, nhưng các chữ cái còn lại không nằm cách đều nhau.
  • Tấm biển thứ ba đã là biển hiệu phù hợp mà không cần xóa chữ cái nào.
  • Có hai cách làm biển hiệu từ tấm biển thứ tư: giữ lại các chữ cái thứ \(1\), \(2\), \(3\) và xóa các chữ còn lại; hoặc giữ lại các chữ cái thứ \(6\), \(7\), \(8\) và xóa các chữ còn lại.

Vì JOI có thể làm biển hiệu từ các tấm biển thứ \(1\), \(3\)\(4\), in ra \(3\).

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: