Python Bài 3.B1: Phân tích văn bản


LÀM BÀI

Points: 15 (partial)
Time limit: 2.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
Python

Mô tả bài toán

Một công ty xuất bản cần phân tích các đoạn văn bản. Họ yêu cầu bạn viết một chương trình với các chức năng: đếm số từ, đếm tần suất xuất hiện của mỗi từ, tìm từ dài nhất và ngắn nhất. Ngoài ra, chương trình cần có khả năng bỏ qua các dấu câu và không phân biệt chữ hoa chữ thường khi phân tích.

INPUT FORMAT

  • Dòng 1: Số nguyên n là số dòng văn bản (1 ≤ n ≤ 10)
  • n dòng tiếp theo: mỗi dòng là một đoạn văn bản (độ dài mỗi dòng ≤ 200 ký tự)
  • Dòng cuối: Số nguyên type (1: đếm từ, 2: tần suất, 3: từ dài/ngắn nhất)

OUTPUT FORMAT

Tùy theo giá trị type:

  • type = 1: Số từ trong văn bản
  • type = 2: Các từ và số lần xuất hiện (sắp xếp theo tần suất giảm dần)
  • type = 3: Từ dài nhất và ngắn nhất, cách nhau bởi dấu phẩy

Ví dụ:

Input
2
Python is a great programming language.
Python is easy to learn and use!
2
Output
python: 2
is: 2
a: 1
great: 1
programming: 1
language: 1
easy: 1
to: 1
learn: 1
and: 1
use: 1

Giải thích

  1. Đếm từ (type = 1):

    • Tách các từ, bỏ qua dấu câu: [python, is, a, great, programming, language, python, is, easy, to, learn, and, use]
    • Số từ = 13
  2. Tần suất (type = 2):

    • python: 2 lần
    • is: 2 lần
    • a, great, programming, language, easy, to, learn, and, use: mỗi từ 1 lần
    • Sắp xếp theo tần suất giảm dần
  3. Từ dài/ngắn nhất (type = 3):

    • Dài nhất: "programming" (11 ký tự)
    • Ngắn nhất: "a" (1 ký tự)

Comments

There are no comments at the moment.

Zalo