[Buổi 21][Xử lý chuỗi][WS] Bài 1: Text Processing Pipeline


LÀM BÀI

Points: 100
Time limit: 2.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++

Text Processing Pipeline

Bối cảnh

Một dòng mô tả tag có thể chứa case và whitespace lộn xộn. Mỗi token hợp lệ chỉ gồm chữ cái.

Pipeline cần clean, tokenize, validate, lowercase và tạo báo cáo tần suất.

Yêu cầu

  1. Đọc cả dòng và tách theo whitespace.
  2. Nếu có token chứa ký tự không phải chữ cái, in INVALID.
  3. Lowercase mọi token.
  4. Đếm tổng token, số token khác nhau và tần suất từng token.
  5. In dòng đầu total distinct.
  6. Tiếp theo in token count theo thứ tự tăng của token.

Input

Một dòng.

Output

INVALID hoặc report.

Ràng buộc

0 ≤ |line| ≤ 3000; token ASCII.

Ví dụ 1

Input

Dev dev Cpp DEV

Output

4 2
cpp 1
dev 3

Giải thích

Có 4 token; sau lowercase chỉ còn 2 token khác nhau: cpp=1, dev=3.

Ví dụ 2

Input

one   two one

Output

3 2
one 2
two 1

Giải thích

Có 3 token và 2 token khác nhau: one=2, two=1.

Thông tin học tập

  • Module: M06
  • Buổi: B21
  • Loại bài: WORKSHOP
  • Độ khó: Medium
  • Concepts: pipeline, normalization, tokenization, validation, map frequency, reporting
  • Giới hạn kiến thức: B01-B21
  • Time limit: 2 second(s)
  • Memory limit: 256 MB
  • Point: 100

Comments

There are no comments at the moment.

Zalo