求大数高次幂的模
来源:互联网 发布:欣赏不来嘻哈 知乎 编辑:程序博客网 时间:2024/04/30 23:42
题目:
/*球大数高次幂的模X^Y mod Z思路:x^y mod z = (x % z)*(x % z)*、、、*(x % z)*/#include <stdio.h>bool Getmi(int X, int Y, int Z, int &res){int numl(1);int numy(Y);int multi(X);int tmp(0);int tres(1);multi = multi % Z;if(multi > 1) //当余数等于0、1时直接可求得结果while(numy > 0){if(multi == 1)break;//当余数等于1时结束循环 numl = 1; int tt = numy; X = multi;while(X < Z && tt > 0 ){X *= multi;tt--;numl++;}tmp = numy % numl;while(tmp){ if(multi == 1)break;tres *= multi;tmp--;}multi = X % Z;numy = numy / numl;tres %= Z;}res = (multi * tres) % Z;return true;}int main(){int x, y, z;int res(0);while(1){res = 0;printf("请输入x, y, z:");scanf("%d %d %d", &x, &y, &z);if(Getmi(x, y, z, res)){printf("result = %d\n\n\n", res);}else{printf("Wrong!!!\n");}}}测试结果:
- 求大数高次幂的模
- 大数的四则运算及求模
- 大数的四则运算及求模
- java大数求模的运算
- 求大数的阶层
- 求 大数的 素数
- 大数求模hdu1212
- 大数求模lightoj1214
- 递归大数求模
- 求一个大数的阶乘
- 求大数n!的位数
- 如何求大数的余数
- 【java】求大数的阶乘
- HDU-求大数的阶乘
- java求大数的阶乘
- 求两个大数的和
- 求一个大数的平方根
- 求一个大数的位数
- 什么是“打新”
- vim开发环境
- ExecutorService线程池
- java中的堆和栈(转)
- 实用分享:Fedora 16安装前指南
- 求大数高次幂的模
- 免费vip
- 连续的自然数相加
- 连续自然数之和
- 创建三层结构
- 读《代码大全》笔记:架构核对表
- m shi
- vim 下使用多个剪贴板
- JAVA中日期格式转换