C7-06 · Đếm một từ trong câu
Xem dạng PDF
Gửi bài giải
Điểm:
1,00
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
Python
Nguồn: Bài C7-06, mục 7.10, giáo trình Lập trình cơ sở với Python — TS. Nguyễn Quốc Long.
Đề
Dòng đầu là một câu chỉ gồm chữ cái và dấu cách, dòng hai là một từ ~w~. Đếm số lần ~w~ xuất hiện trong câu như một từ nguyên vẹn, không phân biệt hoa thường.
"Từ nguyên vẹn" nghĩa là cả một từ của câu (đoạn chữ cái giữa các dấu cách) phải bằng ~w~: với ~w~ = an thì An, AN được tính, còn an nằm bên trong Lan, anh, banh thì không tính.
Dữ liệu vào
- Dòng 1: câu.
- Dòng 2: từ ~w~ (dòng này có thể có dấu cách thừa ở hai đầu — người gõ vô ý; phần chữ là một từ duy nhất).
Kết quả
Một số nguyên: số lần ~w~ xuất hiện như từ nguyên vẹn.
Ràng buộc
- Mỗi dòng dài từ ~1~ đến ~200~ ký tự.
- Dòng 1 chỉ gồm chữ cái
a–z,A–Zvà dấu cách, có ít nhất một từ; dấu cách có thể thừa ở đầu, cuối, giữa hai từ. - Dòng 2 gồm dấu cách (có thể không có) bao quanh đúng một từ chữ cái.
Gợi ý
Làm sạch trước, tính sau (mục 7.9): strip(), lower() ngay khi đọc, rồi so từng từ của split(). count() của chuỗi đếm cả chuỗi con nằm trong từ khác.
Ví dụ 1
Dữ liệu vào:
An va Lan an com roi an tam hoc bai
an
Kết quả:
3
Ví dụ 2
Dữ liệu vào:
Hoc hoc nua HOC MAI
hoc
Kết quả:
3
Giải thích ví dụ
- Ví dụ 1: các từ bằng
ankhi không phân biệt hoa thường làAn(đầu câu),an(sauLan),an(sauroi): 3 lần.Lanchứaannhưng không phải từannên không tính; nếu dùngcau.lower().count("an")sẽ ra 4 — sai. - Ví dụ 2:
Hoc,hoc,HOCđều là từhoc: 3 lần. Dòng 2 có một dấu cách trướchoc, phảistrip()mới so được.
Nguồn trong sách: bài tập C7-06 (mục 7.10) · Mức: (**)
Đang tải...