Xóa ít nhất

Xem dưới dạng PDF

Gửi bài giải


Điểm: 15
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Tý có một văn bản \(T\) và danh sách K từ cấm. Tý muốn xóa một số ký tự khỏi \(T\) để văn bản sau khi xóa không còn chứa bất kỳ từ cấm nào như một xâu con liên tiếp. Các ký tự còn lại giữ nguyên thứ tự ban đầu. Hãy giúp Tý tìm số ký tự ít nhất cần xóa.

Định dạng đầu vào

  • Dòng thứ nhất: xâu văn bản \(T\) (\(1 \le |T| $\le 10^5\)), chỉ gồm các chữ cái tiếng Anh in thường a..z.
  • Dòng thứ hai: số nguyên \(K\) (\(1 \le K $\le 10^5\), tổng độ dài các từ cấm \(\le 10^5\)).
  • K$ dòng tiếp theo: mỗi dòng là một xâu mô tả một từ cấm.

Định dạng đầu ra

  • In ra một số nguyên duy nhất là số lượng ký tự ít nhất cần xóa khỏi \(T\).

Ví dụ

Input:

abcabc
2
ab
bc

Output:

2

Giải thích: Xóa ký tự ở vị trí thứ 1 và 4 (vị trí các ký tự 'b') ta được xâu acac, không còn chứa ab hay bc. Số ký tự cần xóa ít nhất là 2.

Ràng buộc & Subtasks

Subtask Điểm Ràng buộc
1 30 $ T \le 100, K \(\le 10\)
2 30 $ T \le 5000, K \(\le 100\)
3 40 $ T \le 10^5, K \(\le 10^5\)

Nhận xét

Không có ý kiến tại thời điểm này.