Các lập trình viên luôn cố gắng san phẳng các mảng thành các thực thể 1 chiều nhàm chán và điều đó làm tôi buồn.
Nhiệm vụ của bạn là hủy kết nối một chuỗi ký tự tùy ý, xuất ra một tòa nhà chọc trời thành phố đáng yêu.
Hãy xem xét chuỗi: aaabbbbbccqrrssstttttttPPw
Nó trông tốt hơn nhiều như thế này:
tt
tt
bb tt
bb tt
aabb sstt
aabbcc rrssttPP
aabbccqqrrssttPPww
(Ok, vâng, các chữ cái được nhân đôi để làm cho nó trông giống thành phố hơn - đường chân trời).
Lấy một chuỗi đầu vào, nhân đôi từng phần của các ký tự trùng khớp (không nhất thiết phải là chữ cái) và xây dựng cho tôi một thành phố!
Mã byte ngắn nhất giành chiến thắng.
Tôi thực sự nghĩ rằng tôi có các yêu cầu đóng đinh, nhưng để trả lời một số câu hỏi:
- nó phải ở trên mặt đất
- bạn có thể có thêm bầu trời nếu bạn muốn (dẫn các dòng trống, khoảng trống xung quanh) - nhưng không phải giữa các tòa nhà
- các chữ cái có thể được sử dụng lại bên trong chuỗi (cùng kiến trúc, vị trí khác nhau)
- các chữ cái được coi là ASCII, nhưng sẽ có nhiều sự tinh tế hơn cho những người hỗ trợ mã hóa bổ sung (UTF8, v.v.)
aaabbbbaa
?