方法一:快速幂。但是肯定还是超时。

方法二:利用等比数列公式,但是有除法,做不下去了。

方法三:有点分治的味道..

n为偶数时,x^0+x^1+x^2+.......x^n=(x^0+x^1+x^2+.....x^(n/2))*(1+x^(n/2))-x^(n/2);也就是F(n)=F(n/2)*(1+x^(n/2))-x^(n/2);

n为奇数时,x^0+x^1+x^2+.......x^n=(x^0+x^1+x^2+.....x^(n/2))*(1+x^(n/2))-x^(n/2)+x^n;也就是F(n)=F(n/2)*(1+x^(n/2))-x^(n/2)+x^n;

用快速幂计算单个的,n的规模每次递归可以减半。。

仅仅是自己的想法,欢迎指出错误,或者提出更好的方法。

经过试验,减法也是满足同余的,也就是a%p-b%p+p)%p==(a-b)%p。

求x^0+x^1+x^2+.......x^n mod p; x,n,p<=10^9的更多相关文章

  1. 求 主板型号 945GME - ICH7M/U 支持的最大内存,以及内存型号 10

    https://zhidao.baidu.com/question/400302290.html 求 主板型号 945GME - ICH7M/U 支持的最大内存,以及内存型号 10 主板型号 明基 J ...

  2. 求2的n次方对1e9+7的模,n大约为10的100000次方(费马小定理)

    昨天做了一个题,简化题意后就是求2的n次方对1e9+7的模,其中1<=n<=10100000.这个就算用快速幂加大数也会超时,查了之后才知道这类题是对费马小定理的考察. 费马小定理:假如p ...

  3. HDU 1005 Number Sequence【斐波那契数列/循环节找规律/矩阵快速幂/求(A * f(n - 1) + B * f(n - 2)) mod 7】

    Number Sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  4. [zz]求一维序列的信息熵(香浓熵)的matlab程序实例

    对于一个二维信号,比如灰度图像,灰度值的范围是0-255,因此只要根据像素灰度值(0-255)出现的概率,就可以计算出信息熵.    但是,对于一个一维信号,比如说心电信号,数据值的范围并不是确定的, ...

  5. 6.组函数(avg(),sum(),max(),min(),count())、多行函数,分组数据(group by,求各部门的平均工资),分组过滤(having和where),sql优化

     1组函数 avg(),sum(),max(),min(),count()案例: selectavg(sal),sum(sal),max(sal),min(sal),count(sal) from ...

  6. 函数求值一<找规律>

    函数求值 题意: 定义函数g(n)为n最大的奇数因子.求f(n)=g(1)+g(2)+g(3)+-+g(n).1<=n<=10^8; 思路: 首先明白暴力没法过.问题是如何求解,二分.知道 ...

  7. 51NOD 1258 序列求和 V4 [任意模数fft 多项式求逆元 伯努利数]

    1258 序列求和 V4 题意:求\(S_m(n) = \sum_{i=1}^n i^m \mod 10^9+7\),多组数据,\(T \le 500, n \le 10^{18}, k \le 50 ...

  8. Ipad,IPhone(矩阵求递推项+欧拉定理)

    Ipad,IPhone Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total S ...

  9. 求同余方程x^A=B(mod m)的解个数(原根与指标)

    求方程:的解个数 分析:设,那么上述方程解的个数就与同余方程组:的解等价. 设同于方程的解分别是:,那么原方程的解的个数就是 所以现在的关键问题是求方程:的解个数. 这个方程我们需要分3类讨论: 第一 ...

随机推荐

  1. 自学EF一些小笔记

    一直在用DHhelper做MVC,感觉好山寨,也不怎么好用.决定开始学EF. 废话不多说开始记笔记..... EF就是把数据库表,存储过程,视图实例化,通过继承DbContext的一个类来操作数据实例 ...

  2. poj1556The Doors

    链接 枚举两点 若不和任何线段相交 建边为dis(i,j) floyd求最短路 #include <iostream> #include<cstdio> #include< ...

  3. ajax跨域jsonp

    <!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8&qu ...

  4. Python 学习笔记 - 10.类(Class) 1

    定义 Python 的 Class 比较特别,和我们习惯的静态语言类型定义有很大区别. 1. 使用一个名为 __init__ 的方法来完成初始化.2. 使用一个名为 __del__ 的方法来完成类似析 ...

  5. 在Windows和Linux上安装paramiko模块

    一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...

  6. NFS挂载根文件系统

    当NFS跟文件系统挂载不上的时候原因很多,但有一个原因不可忽略,那就是目标板内核支持的NFS版本以及默认版本,我吃过亏,特意做个笔记: setenv bootargs console=ttySAC0  ...

  7. a++ ++a 文件上传函数错误 smarty模板特点

    b = a++; 会先把a初始的值赋值给b,然后a自增1. c = ++a; 先把a自增1,再把增1以后的结果赋值给c.  只要记住在使用的时候  $a++  是先返回$a,再将$a本身的值改变.   ...

  8. php正则:匹配(),{},[]小括号,大括号,中括号里面的内容

    php正则:匹配(),{},[]小括号,大括号,中括号里面的内容 比如有一段字符: $s='60c8 {"code":"200","message&q ...

  9. WebDriver 在使用 CSS Selector 与 XPath 在查找元素时如何取舍

    开发在做Web系统时,用的是css div划分层,使用jQuery 选取元素.

  10. MySQL 加锁处理分析

    1    背景    1 1.1    MVCC:Snapshot Read vs Current Read    2 1.2    Cluster Index:聚簇索引    3 1.3    2P ...