给你二个整数p和a,其中p是质数。求ap除以p后的余数。

[复制链接]
查看11 | 回复2 | 2012-2-15 14:11:39 | 显示全部楼层 |阅读模式
恩,其实这种问题跟P是不是质数一点关系都没有,首先,取余满足分配律例如a=3 p=5, 3^5%5==(3^4%5)*(3^1%5)%5,a=12,b=7,12^7%7==(12^4%5)*(12^2%5)*(12^1%5)%5,这里的^指方,%是取余的意思。所以,这个问题就由比较好的解法,求出a^1,a^2,a^4,a^8……对p的余数,再让这些数拼凑成a^p%p,下面是代码#includeint get_c(int a,int p){
int c[32]={0};
int i,e,j;
c[0]=1;c[1]=a%p;
i=1;
while (i<=p) {c[i+...
回复

使用道具 举报

千问 | 2012-2-15 14:11:39 | 显示全部楼层
根据费马小定理a^p与a模p同余a^p除以p后的余数=a除以p后的余数...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行