Để tránh thông điệp ưu tiên thấp bị bỏ đói, ta áp dụng aging: mỗi lần một thông điệp không được chọn để nhận, độ ưu tiên hiệu dụng của nó tăng 1.
Thao tác:
S p x — gửi thông điệp mã x, ưu tiên gốc p (ưu tiên hiệu dụng ban đầu = p).R — chọn thông điệp có ưu tiên hiệu dụng lớn nhất; nếu hoà, chọn thông điệp gửi trước (seq nhỏ hơn). In mã x. Sau đó mọi thông điệp còn lại trong hàng được +1 vào ưu tiên hiệu dụng (aging).Đảm bảo mọi R đều có thông điệp.
S 5 100, S 1 200, R(chọn 100), R → sau R đầu, 200 được +1 (eff=2). R thứ hai chỉ còn 200 → in 200.
Dòng đầu: n. n dòng: S p x hoặc R.
1 ≤ n ≤ 2000, 0 ≤ p ≤ 10^6, 0 ≤ x ≤ 10^9.
Mỗi R in mã thông điệp nhận được trên một dòng.
Ví dụ:
Đầu vào:
4
S 5 100
S 1 200
R
R
Đầu ra:
100
200
Giải thích:
Đang tải editor...