博士的计算机器
时间限制:20s 空间限制:256MB
题目描述
一日,BY大神黄犇黄大组长打完羽毛球回来,发现博士正在用魔兽地图编辑器做一个
计算器的软件。
因为最近总是一些取模取模的,所以想非常快速的算出来。简而言之,就是对以下3
个问题进行讨论。
1.给定Y、Z、P,计算的值Y^Z mod P;
2.给定Y、Z、P,计算满足的Y^X ≡ Z (Mod P)最小非负整数。
3.给定Y、Z、P,计算C(z,y) Mod P 的值。(意义为Z中取Y的组合)
输入格式
第一行一个正整数N,描述数据组数。
接下来的N行,每行4个正整数Sum,y,z,p。
Sum表述询问类型,如上所述。对于第2种要求,若X不存在,则输出“MathError”
若P不为质数,那么 P=P1^k1 *P2^k2 * …… PL^KL,保证Pi^ki <=10^5
操作数1的操作个数小于501,保证Y,Z,P小于10^9
操作数2的操作个数小于31,保证Y,Z,P小于10^9,而且P为质数
操作数3的操作个数小于31,保证Y,Z,P小于10^7,而且P为质数,P<10^5
输出格式
要求有N行输出,每行一个整数,为询问的答案
样例输入
4 1 2 10 1000 2 3 1 1000 2 2 3 4 3 2 7 9
样例输出
24 0 Math Error 3
提示
没有写明提示
题目来源
没有写明来源