trang chủ / bài tập / hashtags

Đám mây hashtag

Đề bài

Mô tả

Một hashtag là xâu bắt đầu bằng ký tự #, theo sau là một dãy chữ cái Latin thường. Độ dài của hashtag được tính bằng số ký tự sau dấu #.

Trang tin có n hashtag được liệt kê theo thứ tự đăng bài. Người quản trị muốn dãy hashtag này không giảm theo thứ tự từ điển, nhưng không được đổi chỗ chúng. Thao tác duy nhất được phép là xoá một hậu tố (một số ký tự liên tiếp ở cuối) của một hashtag bất kỳ. Có thể xoá bao nhiêu ký tự tuỳ ý, kể cả xoá hết phần chữ cái, khi đó hashtag chỉ còn lại đúng ký tự #.

Hãy tìm cách xoá sao cho tổng số ký tự bị xoá là nhỏ nhất, rồi in ra dãy hashtag thu được.

Xâu a1a2am không lớn hơn xâu b1b2bk theo thứ tự từ điển nếu tại vị trí đầu tiên iaibi ta có ai đứng trước bi trong bảng chữ cái, hoặc không tồn tại vị trí như vậy và mk. Theo định nghĩa này, hashtag chỉ gồm một ký tự # không lớn hơn mọi hashtag khác.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là số hashtag.
  • n dòng tiếp theo, mỗi dòng chứa một hashtag có độ dài dương.

Dữ liệu ra

In ra n dòng là các hashtag sau khi xoá, theo đúng thứ tự ban đầu.

Ràng buộc

  • 1n500000
  • Tổng độ dài của tất cả các hashtag (không tính ký tự #) không vượt quá 500000

Ví dụ

Input Output Giải thích
3
#book
#bigtown
#big
#b
#big
#big
Giữ nguyên #big ở cuối. Hashtag #bigtown phải cắt còn #big. Hashtag #book lớn hơn #big nên phải cắt xuống tiền tố chung dài nhất là #b. Tổng cộng xoá 3+4=7 ký tự.
3
#book
#cool
#cold
#book
#co
#cold
#cool lớn hơn #cold nên cắt về #co. Sau đó #book đã nhỏ hơn #co nên giữ nguyên.
4
#car
#cart
#art
#at
#
#
#art
#at
Không thể giữ hai hashtag đầu: mọi tiền tố khác rỗng của chúng đều bắt đầu bằng c nên lớn hơn #art.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 csc 6.12.0.200 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 kotlinc 2.4.10 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0