Giới thiệu
Đây là nhật ký có độ dài 5:
#####
Tôi muốn chồng một đống các bản ghi này lên nhau. Cách tôi làm điều này là tôi trượt một bản ghi mới lên trên cùng trên cùng từ bên phải và dừng trượt khi kết thúc bên trái hoặc bên phải của chúng thẳng hàng (đừng hỏi tại sao). Nếu nhật ký mới dài hơn, nó sẽ trượt hết về phía bên trái của nhật ký trên cùng:
######## <-
#####
Nếu nó ngắn hơn, nó chỉ trượt cho đến khi kết thúc bên phải của chúng thẳng hàng:
###### <-
########
#####
Khi tôi trượt thêm các bản ghi vào đống, vị trí của chúng được xác định bởi nhật ký trên cùng hiện tại:
##
######
###
####
##
######
########
#####
Điều này có vẻ không thể, nhưng hãy giả vờ nó hoạt động.
Nhiệm vụ
Đầu vào của bạn sẽ là một danh sách không có các số nguyên dương, biểu thị độ dài của nhật ký của tôi. Số ngoài cùng bên trái là nhật ký đầu tiên tôi đặt vào cọc, vì vậy nó kết thúc ở phía dưới. Trong ví dụ trên, đầu vào sẽ là [5,8,6,2,4,3,6,2]
. Đầu ra của bạn sẽ là, cho mỗi cột của cọc kết quả, số lượng các bản ghi vượt qua cột đó. Trong ví dụ trên, đầu ra chính xác sẽ là [2,2,3,3,3,2,4,6,3,3,1,2,2]
.
Quy tắc và tính điểm
Đầu vào và đầu ra có thể ở bất kỳ định dạng hợp lý. Đầu ra chỉ có thể chứa các số nguyên dương, tức là nó không được có 0
s dẫn đầu hoặc dấu . Quy tắc golf-code thông thường được áp dụng: bạn có thể viết một chương trình đầy đủ hoặc một hàm, số byte thấp nhất sẽ thắng và các lỗ hổng tiêu chuẩn bị cấm.
Các trường hợp thử nghiệm
[1] -> [1]
[4] -> [1,1,1,1]
[3,2] -> [1,2,2]
[2,3] -> [2,2,1]
[2,2,2] -> [3,3]
[2,3,2] -> [2,3,2]
[3,2,3] -> [1,3,3,1]
[1,3,2,2,1,3,1] -> [2,3,5,1,2]
[4,3,4,2,4,3,4,2] -> [1,3,3,5,5,3,4,2]
[5,8,6,2,4,3,6,2] -> [2,2,3,3,3,2,4,6,3,3,1,2,2]
[5,10,15,1,1,1,1,1,2] -> [3,3,3,3,3,2,2,2,2,2,1,1,1,1,7,1]
[13,12,2,10,14,12] -> [1,2,2,2,2,2,2,2,2,2,2,5,5,3,3,3,3,3,3,3,3,2,2,2,2]
[12,14,3,6,13,1,1] -> [2,2,2,2,2,2,2,2,2,2,2,5,4,4,2,2,2,1,1,1,1,1,1,3]
[7,5,12,5,1,10,14,5] -> [1,1,3,3,3,3,3,1,1,2,2,2,2,5,2,2,2,2,2,2,2,2,3,2,2,2,2]
[14,5,1,3,12,6,2,2,1,7,9,15] -> [1,1,1,1,1,1,1,1,1,2,2,2,2,5,2,2,1,1,1,2,2,2,2,4,8,3,3,3,3,3,3,2,2,1,1,1,1,1,1]