#P3306. [SDOI2013] 随机数生成器
[SDOI2013] 随机数生成器
题目背景
小 W 喜欢读书,尤其喜欢读《约翰克里斯朵夫》。
题目描述
最近小 W 准备读一本新书,这本书一共有 页,页码范围为 。
小 W 很忙,所以每天只能读一页书。为了使事情有趣一些,他打算使用 NOI2012 上学习的线性同余法生成一个序列,来决定每天具体读哪一页。
我们用 来表示通过这种方法生成出来的第 个数,也即小 W 第 天会读哪一页。这个方法需要设置 个参数 ,满足 ,且 都是整数。按照下面的公式生成出来一系列的整数:
其中 表示取余操作。
但是这种方法可能导致某两天读的页码一样。
小 W 要读这本书的第 页,所以他想知道最早在哪一天能读到第 页,或者指出他永远不会读到第 页。
输入格式
本题单测试点内有多组测试数据。
第一行是一个整数 ,表示测试数据组数。
接下来 行,每行有五个整数 ,表示一组数据。
输出格式
对于每组数据,输出一行一个整数表示他最早读到第 页是哪一天。如果他永远不会读到第 页,输出。
3
7 1 1 3 3
7 2 2 2 0
7 2 2 2 1
1
3
-1
提示
数据规模与约定
对于全部的测试点,保证:
- 。
- ,。
- 为质数。