对mod的概念一向比较模糊。不知道n为负数,也就是2^n 为分数(1/(2^-n))怎么mod,刚才搜索了一些关于分数mod的信息。如下: 对于整数m ,n,(m<n)要求 1/m mod n=?步骤(1): 找到一个整数p使得 1/m +p=(1+p*m)/m,使得整数(1+p*m)是n的倍数 ,也即 (1+p*m) mod n=0; (2):问题转化为1/m ≡ -p mod n ,此时只要求得-p mod n 的值就可以了,例如 1/2 mod 7 = 4;1/3 mod 7= 5; 1/4 mod 7=2; 1/5 mod 7=3;1/6 mod 7=6;
按照这个方法,那么条件1 N>0就不正确了,因为N也可以小于零,比如当N=-2时,2^-2 mod 3 就等于1/4 mod3=1, 答案只有2, 3 正确。