Một vài tháng trước, chúng tôi đã có một cuộc thảo luận về meta về việc tăng danh tiếng được trao cho những người ủng hộ cho các câu hỏi. Đây là những điều cơ bản của hệ thống danh tiếng hiện tại của chúng tôi để bình chọn: 1
- Một câu hỏi upvote
U
có giá trị 5 danh tiếng. - Một câu trả lời upvote
u
có giá trị 10 danh tiếng. - Một câu hỏi hoặc câu trả lời downvote
d
có giá trị -2 danh tiếng.
Đã có nhiều đề xuất khác nhau cho một hệ thống mới, nhưng phổ biến nhất hiện nay là giống hệt như trên, nhưng với các câu hỏi nâng cấp tỷ lệ lên +10 rep. Thử thách này là về việc tính toán bạn sẽ kiếm được bao nhiêu đại diện nếu hệ thống này được đưa vào sử dụng.
Hãy xem xét một ví dụ. Nếu hoạt động bỏ phiếu là UUUUuuuuUUUUUduuudUU
, thì bạn sẽ kiếm được 121 theo hệ thống hiện tại:
U x 4 x 5 = 20 = 20
u x 4 x 10 = 40 = 60
U x 5 x 5 = 25 = 85
d x 1 x -2 = -2 = 83
u x 3 x 10 = 30 = 113
d x 1 x -2 = -2 = 111
U x 2 x 5 = 10 = 121
Total: 121
Nhưng cùng một hoạt động sẽ kiếm được 176 theo hệ thống mới:
U x 4 x 10 = 40 = 40
u x 4 x 10 = 40 = 80
U x 5 x 10 = 50 = 130
d x 1 x -2 = -2 = 128
u x 3 x 10 = 30 = 158
d x 1 x -2 = -2 = 156
U x 2 x 10 = 20 = 176
Total: 176
Bạn sẽ đạt được 55 rep từ kịch bản này.
Cho đến nay, việc tính toán đại diện thay đổi không quá khó; chỉ cần đếm số U
s và nhân với 5. May mắn thay, hệ thống đại diện không đơn giản: cũng có giới hạn đại diện , đó là danh tiếng nhất bạn có thể kiếm được từ phiếu bầu trong một ngày UTC. Điều này được đặt thành 200 trên tất cả các trang web.
Ngoài ra, giới hạn đại diện áp dụng trong thời gian thực: nếu bạn đã kiếm được 196 đại diện và bạn nhận được một câu trả lời, bạn sẽ có 200 đại diện. Nếu bạn nhận được một downvote ngay sau đó, 2 rep sẽ bị trừ từ 200, vì vậy bạn sẽ có 198 rep.
Với hoạt động bỏ phiếu UUUuuuuUUUUuuuuUUUUUUUd
, bạn sẽ kiếm được 148 đại diện theo hệ thống hiện tại:
U x 3 x 5 = 15 = 15
u x 4 x 10 = 40 = 55
U x 4 x 5 = 20 = 75
u x 4 x 10 = 40 = 115
U x 7 x 5 = 35 = 150
d x 1 x -2 = -2 = 148
Total: 148
Nhưng bạn sẽ kiếm được 198 theo hệ thống mới:
U x 3 x 10 = 30 = 30
u x 4 x 10 = 40 = 70
U x 4 x 10 = 40 = 110
u x 4 x 10 = 40 = 150
U x 7 x 10 = 70 = 200 (rep capped)
d x 1 x -2 = -2 = 198
Total: 198
Như vậy, mức tăng là 50 rep .
Thử thách
Thách thức của bạn là viết một chương trình hoặc hàm có trong một chuỗi nhiều dòng và đưa ra tổng số đại diện sẽ đạt được với thuật toán trên. Mỗi dòng được tính là 1 UTC, vì vậy giới hạn đại diện chỉ áp dụng một lần cho mỗi dòng.
Các trường hợp thử nghiệm
(Một hoặc nhiều dòng đầu vào, theo sau là số nguyên đầu ra.)
UUUuudd
15
UUUuUUUUuUuuUUUUudUUUUuU
57
UUUuUUUUuUuuUUUUudUUUUuU
UUUuudd
72
uuuuuuu
uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
uuuuuuuuuuuuuuuuuuuu
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
0
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
5
(empty string)
0
UUUuuuuuUUUuuUUUUUUuuuUUUuuUUUUuuuuUUUdddddddUU
4
UUUuuuuuUUUuuUUUUUUuuuUUUuuUUUUuuuuUUUdddddddUU
UuuUUUudUU
UUUUUUUUUuuuuuuUUUUUUuuUUUUUUuuuuuUUUUUUUUuUUUuuuuUUUUuuuUUUuuuuuuUUUUUUUUuuUUUuuUU
UUu
U
d
UU
UUUUUUUUUUUU
119
Đây là mã golf, vì vậy mã ngắn nhất trong byte thắng.
Các thách thức liên quan: Tính tổng tích lũy giới hạn của một vectơ , Tính toán danh tiếng trao đổi ngăn xếp của bạn
1 Đây là phiên bản đơn giản hóa cao của hệ thống. Bạn cũng mất 1 đại diện vì đã bỏ qua một câu trả lời, và tồn tại những điều không mong muốn, đó là điều kỳ lạ và tuân theo các quy tắc của riêng họ ; và không được khuyến khích, thậm chí không có quy tắc để tuân theo .