快速幂模板

原创 2015年11月21日 11:14:58
/*
快速幂 大大提高幂运算效率 原理与二进制有关 
*/

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<algorithm>
#include<stack>
#include<queue>
#include<vector>
using namespace std;

#define MM 1000000007

int pow3(int a,int b)   //1011  =   11  复杂度log2(N) 
{
	int r=1,base=a;
	while(b!=0)
	{
	if(b&1)   //b不为偶数 
	r*=base;
	
	base*=base;
	b>>=1;   //b除以2 
	}
	return r;
}


long long pow4(long long  a,long long  b)   //配合模的运算 
{
	long long r=1,base=a;
	while(b!=0)
	{
	if(b&1)     //b不为偶数 
	{r*=base;r%=MM;} 
	
	base*=base;
	base%=MM;
	b>>=1;     //b除以2 
	
	//r%=MM; 
	}
	return r;
}

int main()
{
	cout<<pow3(2,3)<<endl;
	cout<<pow3(4,3)<<endl;
	cout<<pow3(3,2)<<endl;
	cout<<pow3(5,2)<<endl;
	
	return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

FZU 1759 Super A^B mod C (欧拉函数,快速幂,降幂公式)

题目链接:http://acm.fzu.edu.cn/problem.php?pid=1759 一道吓人的题。。 不禁再次感叹数学真伟大,使用下面的降幂公式很简单就写出来了。 phi是欧...
  • Strokess
  • Strokess
  • 2016年04月23日 20:09
  • 1968

快速幂取模详解(C语言版)

在百度文库上下载的快速幂详解,作者给出快速幂算法的完整解释(虽然我也还没看懂,但是确实写的很好,正在仔细研究中)用的是C语言,不同语言的读者只好换个位啦,毕竟读C的人较多~(原网址http://wen...
  • baidu_20363843
  • baidu_20363843
  • 2015年11月01日 16:44
  • 2356

矩阵快速幂求斐波那契数列(初学整理)

参考文章:                  http://blog.csdn.net/u013795055/article/details/38599321                  htt...
  • NYIST_TC_LYQ
  • NYIST_TC_LYQ
  • 2016年10月31日 13:27
  • 6625

【数论】gcd|扩展gcd|素数筛法|快速幂|欧拉函数(各种模板)

这里总结了一些基础的数学概念。 整除: 一个数可以被另一个数整除是数论中的一个关键概念。d|a(d整除a,a除以d)的含义是存在某个整数k,使得a=kd。称a是d的倍数,d是a的约数(因数)。 带余数...
  • Hemk340200600
  • Hemk340200600
  • 2017年03月15日 14:08
  • 483

洛谷 P1939 【模板】矩阵加速(数列):优化递推式的方法——矩阵快速幂

在大多数情况下,O(n)的效率都是值得骄傲的,然而,有时候并不是,比如如何在一秒钟内算出一个递推式的第1e9项,很明显O(n)不行了。 然而常数级又不太现实,除非你的数学非常好,这题又比较简单,你推了...
  • qq_37666409
  • qq_37666409
  • 2017年12月15日 19:49
  • 62

矩阵快速幂模板 参考bjfu1440

#include #include #include #include #include #include #include #include #include #include #include #...
  • Triose
  • Triose
  • 2015年10月10日 11:44
  • 268

Covering HDU - 6185 矩阵快速幂 or杜教模板

题目 题意 4*n的方格块 要用1*2和2*1的矩形填满,问填发。解题思路 : n最大为1e18,。 考虑矩阵快速幂。 先用状压DP打出前面几项,然后for循环一个一个试求出递推式系数。。。。。...
  • lifelikes
  • lifelikes
  • 2017年11月21日 21:42
  • 72

Queuing(矩阵快速幂(递推and模板))

【题目来源】:https://vjudge.net/problem/HDU-2604 【题意】 f,m分别是female与male的缩写,假设有一个队列里面是这些字母缩写,长度为L,那么共有2^L...
  • duan_1998
  • duan_1998
  • 2017年05月30日 18:20
  • 110

矩阵运算,矩阵快速幂,模板

#include #include #include #include using namespace std; #define MOD 1000000007 struct Mat{ int...
  • kele52he
  • kele52he
  • 2017年07月31日 19:33
  • 108

矩阵快速幂(new 模板

第一种 ju jumul(ju a,ju b) {//矩阵乘法 int i,j,k; ju c; c.CSH(); for(i=0;i
  • tree__water
  • tree__water
  • 2017年10月20日 20:06
  • 60
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:快速幂模板
举报原因:
原因补充:

(最多只允许输入30个字)