#SGM0000056. Truy vấn cập nhật ngẫu nhiên (Random Update Query)
Truy vấn cập nhật ngẫu nhiên (Random Update Query)
Truy vấn cập nhật ngẫu nhiên (Random Update Query)
Nguồn: AtCoder
Phiên bản: Phước Hưng OJ Extended
Đề bài
Mỗi thao tác chọn ngẫu nhiên đều một vị trí trong rồi gán . Sau toàn bộ thao tác, in kỳ vọng của từng theo modulo .
Input
Dòng đầu chứa . Dòng thứ hai chứa . Mỗi trong dòng sau chứa L R X, nghĩa là chọn ngẫu nhiên đều một vị trí rồi gán .
Output
In kỳ vọng cuối cùng theo modulo trên một dòng.
Subtask
-
Subtask 1 (20%): và số thao tác không vượt 30; các điều kiện còn lại giữ như đề đầy đủ.
-
Subtask 2 (30%): và số thao tác không vượt 3000; các điều kiện còn lại giữ như đề đầy đủ.
-
Subtask 3 (50%): toàn bộ giới hạn:
-
-
Ví dụ
Input
3 2
1 2 3
1 3 6
2 2 10
Output
665496238 10 4
Giải thích
Mỗi thao tác được đổi thành cập nhật affine của kỳ vọng. Sau hai thao tác, ba kỳ vọng theo modulo lần lượt là 665496238 10 4.