[Buổi 2][Chọn STL theo bài toán][HW] Bài 3: Hệ thống đăng ký tên


LÀM BÀI

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

Author:
Problem types

Hệ thống đăng ký tên

Bối cảnh và bài toán

Một nền tảng học trực tuyến cho phép người dùng chọn tên tài khoản. Máy chủ xử lý yêu cầu theo đúng thứ tự nhận được và phải phản hồi ngay, vì vậy mỗi lần tra cứu hay cập nhật đều cần đủ nhanh khi số người đăng ký lớn.

Với mỗi yêu cầu name:

  • nếu name chưa từng được đăng ký, hệ thống đăng ký tên đó và in OK;
  • nếu name đã tồn tại, hệ thống nối số dương nhỏ nhất k vào sau name để tạo tên mới chưa dùng, đăng ký tên mới và in tên mới.

Tên trong yêu cầu đầu vào chỉ gồm chữ thường a..z, vì vậy không chứa chữ số. Điều này bảo đảm một tên do hệ thống sinh ra như anna1 sẽ không xuất hiện về sau dưới dạng tên gốc trong đầu vào.

Yêu cầu

Mô phỏng hệ thống và in phản hồi cho từng yêu cầu đăng ký.

Input

  • Dòng 1: n.
  • n dòng tiếp theo: một tên yêu cầu, độ dài từ 1 đến 32.

Output

Một dòng phản hồi cho mỗi yêu cầu.

Ràng buộc

  • 1 <= n <= 10^5

Chấm điểm

Subtask Điểm Điều kiện Official tests
S1 20% n ≤ 20 01–04
S2 30% n ≤ 2 000 05–10
S3 50% Không có ràng buộc bổ sung 11–20

Ví dụ 1

Input

4
abacaba
acaba
abacaba
acab

Output

OK
OK
abacaba1
OK

Giải thích. Hai tên đầu chưa tồn tại nên được chấp nhận. Yêu cầu abacaba lần hai bị trùng, vì vậy hệ thống tạo abacaba1. Tên acab vẫn chưa được dùng nên nhận OK.

Ví dụ 2

Input

5
a
a
a
b
a

Output

OK
a1
a2
OK
a3

Giải thích. Sau lần đầu, a đã tồn tại. Ba lần đăng ký trùng tiếp theo nhận lần lượt các hậu tố nhỏ nhất còn trống: a1, a2, a3.

Thông tin bài tập

Thuộc tính Giá trị
Mã bài DSA-M01-B02-HW03
Buổi B02
Loại bài HOMEWORK
Mức độ khó Trung bình (Medium)
Thời gian làm bài khuyến nghị 30 phút
Time limit 2 giây
Memory limit 256 MB
Tổng điểm 100
Chuẩn ngôn ngữ tham chiếu C++17

Nguồn: Phỏng theo Codeforces Beta Round 4 — 4C Registration System.
Tham khảo: https://codeforces.com/problemset/problem/4/C
Ghi chú biên tập: Biên tập lại ngữ cảnh/constraints và chuẩn hóa theo lộ trình FULLHOUSE DEV; giữ bản chất yêu cầu của bài nguồn.


Comments

There are no comments at the moment.

Zalo