Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

ONE4EVER - Forever Alone Person

Dù thông minh, đẹp trai, học giỏi nhưng vẫn không thoát khỏi kiếp FA vì chỉ có 8cm và lười tắm, Khánh 3508 lại buồn bã trở về vnoi code lại từ đầu. Trong một ngày chán như con gián, Khánh 3508 nhổ trộm bông hướng dương nhà hàng xóm và ngồi … đếm cánh hoa. Mỗi lần một cánh hoa rụng xuống là câu nói “Tắm”, “Không tắm” lại vang lên. Đã ba năm trôi qua Khánh 3508 vẫn chỉ ngồi đếm lá và chưa tắm rồi đột nhiên anh ta đứng lên và chạy về máy tính : “Đúng rồi số ngẫu nhiên!”. Hóa ra Khánh 3508 đã nghĩ ra cách làm mới mà không phải nhổ trộm hoa + ngồi đếm số cánh hoa. Chúng ta biết rằng số ngẫu nhiên được sinh ra bởi bộ ba số a,b,m theo quy tắc:

+Số thứ nhất là x1=b mod m

+Số thứ k là (a*xk-1+b) mod m với k>1

Khánh 3508 sẽ lấy số xk để so với lịch xem nó có phải ngày đẹp hay không để quyết định tắm rửa. Tuy nhiên do thích chơi trội Khánh 3508 đã để a,b,m,k rất lớn khiến máy tính bị đơ. Bạn hãy giúp Khánh tính xk thật nhanh để cậu ta có thể tắm.

Input

  • Dòng 1: Số nguyên T (1≤T≤10) là số lượng test
  • T dòng tiếp theo, mỗi dòng gồm 4 số nguyên a,b,m,k (1≤a,b,m,k≤1015)

Output

  • Gồm T dòng, mỗi dòng in ra số xk tương ứng.

Example

Input:
3
1 1 1 1
2 5 100 6
1 8 777 6 Output: 0
15
48
Hình ảnh minh họa:
Khánh 3508 

Được gửi lên bởi:Phồng Tôm
Ngày:2013-07-10
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ASM64 GOSU PERL6 PYPY RUST SED

hide comments
2018-02-06 13:59:54
Đây là code của mình :
http://vn.spoj.com/problems/ONE4EVER/
2017-12-04 11:03:50
a, b <= 10^15 --> a*b <= 10^30 --> 60d
2017-04-04 05:43:47
bi 60 la lam sao vay moi nguoi
2017-02-02 16:44:50
đề vui tính ghê, 8cm =))
2016-10-17 04:32:30
ko cần số lớn, ko cần nhân ma trận vẫn ac :v

Last edit: 2016-10-17 04:32:53
2016-08-01 16:02:52
má ơi mừng quá, làm mãi mới AC, cái phần nhân để int nên ngủm @@@
2016-07-29 17:46:51 Sue
Hình như có test ép sol phải cài bignum :v
C++ (nhân không dùng bignum): 90
Python: 100
đời...
2016-06-22 13:15:22 Nguyễn Nam
ko xử lí số lớn 1 phát AC :v
2016-05-16 03:31:45
tui ko hỉu dòng +Số thứ k là (a*xk-1+b) mod m với k>1, ad giúp hộ e!
2015-11-08 05:51:30 Thắng Ðam Mê
K=10^15 mà lúc luỹ thừa lại để biến longint làm mất 1 đấm
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.