CSES - Sliding Window Sum | Tổng Cửa Sổ Trượt
Xem PDFBạn được cho một mảng gồm \(n\) số nguyên. Nhiệm vụ của bạn là tính tổng của mỗi cửa sổ gồm \(k\) phần tử, từ trái sang phải.
Trong bài này, dữ liệu đầu vào rất lớn và được tạo bằng một bộ sinh.
Input
Dòng đầu tiên chứa hai số nguyên \(n\) và \(k\): số lượng phần tử và kích thước cửa sổ.
Dòng tiếp theo chứa bốn số nguyên \(x\), \(a\), \(b\) và \(c\): các tham số của bộ sinh dữ liệu. Dữ liệu đầu vào được sinh như sau:
-
\(x_1=x\)
-
\(x_i=(ax_{i-1}+b) \bmod c\) với \(i=2,3,\dots,n\)
Output
In ra xor của tất cả các tổng cửa sổ.
Constraints
-
\(1 \le k \le n \le 10^7\)
-
\(0 \le x, a, b \le 10^9\)
-
\(1 \le c \le 10^9\)
Example
Test 1
Input
8 5
3 7 1 11
Output
12
Giải thích: Mảng đầu vào là \([3,0,1,8,2,4,7,6]\). Các cửa sổ là \([3,0,1,8,2]\), \([0,1,8,2,4]\), \([1,8,2,4,7]\) và \([8,2,4,7,6]\), và tổng của chúng lần lượt là \(14\), \(15\), \(22\) và \(27\). Do đó, đáp án là \(14 \oplus 15 \oplus 22 \oplus 27 = 12\).
Bình luận