java 快速求余

 时间:2024-10-13 06:56:14

1、算法描述:参数:(底数,指数,指数位数,模数)从高位开始计数如果二进制位为一则乘以底数否则平方进入下一轮

java 快速求余

2、代码:public class Fastmod{ public static void main(String args[]) { fastmod(Integer.parseInt(args[0]),Integer.parseInt(args[1]),Integer.parseInt(args[2]),Integer.parseInt(args[3])); } public static int fastmod(int base ,int exp,int extc,int mod) { int c=0;int d=1; for(int i=extc;i>=0;i--) { c=c*2; System.out.println(c); d=(d*d)%mod; if(getbit(exp,i)==1) { c++; d=(d*base)%mod; } System.out.println(d); } return d; } public static int getbit(int p,int index) { for(int i=0;i<index;i++) { p=p>>>1; } return p%2; }}

3、编译运行

  • 《比特大爆炸》初级强化石*3在哪里领取
  • 《艾尔登法环》圣树秘密符节右如何获得?
  • 万圣节之充满血腥的丧尸手指
  • 命运2高塔隐藏房间怎么进入
  • 艾尔登法环催眠苔药怎么制作
  • 热门搜索
    细腻的近义词 植物大战僵尸怎么玩 努力的近义词 怎么读音标 感冒发烧不能吃什么 右后背疼是怎么回事 竟然的近义词是什么 黄豆酱怎么吃 汽车常识 脸上的黑点怎么去掉