记起始整型变量 x=0 ,你需要实现 x 与若干个整数的四则运算,每次结果重新保存为 x ,并将最终结果对 p 取模 (不保证 p 是质数) 。
输入
首先输入一行两个整数 t,p(1\le t\le10^5,2\le p\le10^{9}+7) 。
接下来输入 t 行,每行两个整数 c, y (1\le c\le4,0\le|y|\le10^{18}) 。
若 c=1 ,计算 x+y 并将结果保存在 x 内。
若 c=2 ,计算 x-y 并将结果保存在 x 内。
若 c=3 ,计算 x\times y 并将结果保存在 x 内。
若 c=4 ,计算 x\div y 并将结果保存在 x 内。
输入保证计算过程不会出现零除,且保证除数存在逆元。
输出
每次运算结束后输出一行一个整数,为 x\bmod p 。共输出 t 行,你需要保证输出为非负数。
样例
标准输入 复制文本 |
6 1000000007 1 1437 2 1438 1 580 3 2 4 4 3 8 |
标准输出 复制文本 |
1437 1000000006 579 1158 500000293 2316 |