51nod 1013 3的幂的和(等比数列求和_快速幂+逆元)

原创 2015年10月25日 10:02:42


求:3^0 + 3^1 +...+ 3^(N) mod 1000000007
Input
输入一个数N(0 <= N <= 10^9)
Output
输出:计算结果
Input示例
3
Output示例
40

关于逆元的一些知识点:

若对于数字A,C 存在X,使A * X = 1 (mod C) ,那么称X为 A 对C的乘法逆元。

逆元的作用?让我们来看下面的例子:
12 / 4 mod 7 = ? , 很显然结果是3
我们现在对于数对 (4,7), 可以知道 X = 2是 4 对7的乘法逆元即2*4=1(mod 7)
那么我们有(12 / 4) * (4 * 2 ) = (?) * (1) (mod 7)
除法被完美地转化为了乘法
理论依据:
F / A mod C = ?
如果存在 A*X = 1 (mod C)
那么2边同时乘起来,得到 F * X = ? (mod C)
成立条件
(1) 模方程 A * X = 1(mod C) 存在解
(2) A | F (F % A == 0)
以下来百度百科:
若ax=1 mod f 则称a关于模f的乘法逆元为x。也可表示为ax≡1(mod f)。
  当a与f互素时,a关于模f的乘法逆元有唯一解。如果不互素,则无解。如果f为素数,则从1到f-1的任意数都与f互素,即在1到f-1之间都恰好有一个关于模f的乘法逆元。
  例如,求5关于模14的乘法逆元:
  14=5*2+4
  5=4+1
  说明5与14互素,存在5关于14的乘法逆元。
  1=5-4=5-(14-5*2)=5*3-14
  因此,5关于模14的乘法逆元为3。










#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int mod=1000000007;
typedef long long ll;
ll mod_pow(ll x,ll n)
{
	int first=1;
	ll res=1;
	while(n>0) {
		if(n&1) res=res*x%mod;
		x=x*x%mod;
		n>>=1;
	}
	return res;
} 
int main()
{
	
    ios::sync_with_stdio(false);
	ll n,ans;
	cin>>n;
	n++;
	ans=(mod_pow(3,n)-1)*500000004%mod;    //求2的逆元即可。。因为Sn=(a1-an*q)/(1-q)%mod 
	cout<<ans<<endl;
	return 0;
}





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

相关文章推荐

51nod 1013 3的幂的和(费马小定理+快速幂 or 矩阵快速幂)

1013 3的幂的和 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题  收藏  关注 求:3^0 + 3^1 +...+ 3^(N) mod ...

51Nod 1013 3的幂的和(快速幂+逆元)

题目链接: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1013 求:3^0 + 3^1 +...+ 3^(N)...

51nod 1013:3的幂的和 快速幂

1013 3的幂的和 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题  收藏  关注 求:3^0 + 3^1 +...

1013 3的幂的和

求:3^0 + 3^1 +…+ 3^(N) mod 1000000007 Input 输入一个数N(0
  • NaCl__
  • NaCl__
  • 2016年01月03日 22:07
  • 511

51nod 1013 3的幂的和(快速幂+逆元)

求:3^0 + 3^1 +…+ 3^(N) mod 1000000007 Input输入一个数N(0

[数学技巧 等比数列] 斐波那契k次幂和

参考:http://blog.csdn.net/acdreamers/article/details/23039571 题意:给定和,其中,,求  的值。 首先k小的情况可以构...

1013 3的幂的和

求:3^0 + 3^1 +...+ 3^(N) mod 1000000007 Input 输入一个数N(0  Output 输出:计算结果 Input示例...

hdu 6082 度度熊与邪恶大魔王 类完全背包

Problem Description 度度熊为了拯救可爱的公主,于是与邪恶大魔王战斗起来。邪恶大魔王的麾下有n个怪兽,每个怪兽有a[i]的生命值,以及b[i]的防御力。度度熊一共拥有m种攻击方式,...

【51Nod】1013 - 3的幂的和(等比数列 & 逆元)

点击打开题目 1013 3的幂的和 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题  收藏  关注 ...
  • wyg1997
  • wyg1997
  • 2016年08月16日 08:40
  • 154

51Nod 1013 3的幂的和 (快速幂取模+逆元)

51Nod 1013 3的幂的和 (快速幂取模+逆元):http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1013 题面描述...
  • PNAN222
  • PNAN222
  • 2016年08月17日 18:29
  • 253
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:51nod 1013 3的幂的和(等比数列求和_快速幂+逆元)
举报原因:
原因补充:

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