Tổng của các phần tử

Xem dạng PDF

Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho một mảng gồm ~n~ số nguyên. Hãy tính tổng của mỗi cửa sổ liên tiếp gồm đúng ~k~ phần tử, theo thứ tự từ trái sang phải.

Trong bài toán này, dữ liệu đầu vào rất lớn và được sinh bằng bộ sinh dữ liệu.

Input

  • Dòng đầu tiên chứa hai số nguyên ~n,k~ — số lượng phần tử của mảng và kích thước của cửa sổ.

    ~(1 \le k \le n \le 10^7)~.

  • Dòng thứ hai chứa bốn số nguyên ~x,a,b,c~ — các tham số của bộ sinh dữ liệu.

    ~(0 \le x,a,b \le 10^9,\ 1 \le c \le 10^9)~.

    Mảng được sinh theo quy tắc:

    • ~x_1=x~
    • ~x_i=(a \cdot x_{i-1}+b)\bmod c~, với ~2 \le i \le n~.

Output

In ra giá trị XOR của tổng tất cả các cửa sổ có độ dài ~k~.

Ví dụ

Sample Input
8 5
3 7 1 11
Sample Output
12

Giải thích

Mảng được sinh là:

~[3,0,1,8,2,4,7,6]~.

Các cửa sổ có độ dài ~5~ là:

  • ~[3,0,1,8,2]~
  • ~[0,1,8,2,4]~
  • ~[1,8,2,4,7]~
  • ~[8,2,4,7,6]~

Tổng tương ứng là:

~14,15,22,27~.

Do đó kết quả là:

~14 \oplus 15 \oplus 22 \oplus 27 = 12~.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.