bzoj#P3310. [USACO2013 Nov] Empty Stalls

[USACO2013 Nov] Empty Stalls

题目描述

约翰的谷仓中有 NN 个房间,编号 0N10\sim N-1,这些房间排布成环状,编号 00 的和编号 N1N-1 的相邻。

每天傍晚,奶牛们一只一只排队回到谷仓,每头奶牛都有一个喜欢的房间,但是,如果它喜欢的房间已被其他奶牛占了,它会向前挨个探索其他房间(如果它探索过了 N1N-1 号房间,它会继续探索 00 号房间,以此继续下去)直到探到第一个没有被占用的房间,这时它会宣布占用这个房间。

告诉你每头奶牛喜欢的房间,当所有奶牛都找到房间后,剩下的没被占用的房间中,编号最小的是哪个。很明显,问题的答案与奶牛进入谷仓的顺序无关。

为避免输入内容过多。本题的输入数据采用一种简洁的方式:一共 KK 行,每行格式如下:

X Y A BX\ Y\ A\ B

表示有 YY 批奶牛,每批 XX 头,也就是总共 X×YX\times Y 只奶牛喜欢的房间号。YY 批奶牛编号 1Y1\sim Y,第 iiXX 头奶牛喜欢的房间号为 (A×i+B)modN(A\times i+B)\bmod N.

注意,只有 64MB64\text{MB} 的空间。

输入格式

第一行两个整数 N,KN,K

21+K2\sim 1+K 行,每行包含四个整数 X,Y,A,BX,Y,A,B

输出格式

一行一个整数,表示答案。

10 3
3 2 2 4
2 1 0 1
1 1 1 7 
5 

样例说明 1

谷仓里有 1010 个房间,编号为 090\sim 9。第二行输入表示,33 头牛喜欢的房间号为 (2×1+4)mod10=6(2\times 1+4)\bmod 10=633 头牛喜欢的房间号为 (2×2+4)mod10=8(2\times 2+4)\bmod 10=8。第三行表示 22 头牛喜欢的房间号为 (0×1+1)mod10=1(0\times 1+1)\bmod 10=1。第四行表示 11 头牛喜欢的房间号为 (1×1+7)mod10=8(1\times 1+7)\bmod 10=8(因此总共有 44 头牛喜欢这个房间号)。

最终没有被占用的编号最小的房间为房间 55

数据规模与约定

对于 100%100\% 的数据,2N3×1062\leq N\leq 3\times 10^61K1041\leq K\leq 10^40A,B1090\leq A,B\leq 10^9

题目来源

Gold