首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
51nod 1228 序列求和(伯努利数)
】的更多相关文章
51nod 1228 序列求和(伯努利数)
1228 序列求和 题目来源: HackerRank 基准时间限制:3 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 收藏 关注 T(n) = n^k,S(n) = T(1) + T(2) + ...... T(n).给出n和k,求S(n). 例如k = 2,n = 5,S(n) = 1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 55. 由于结果很大,输出S(n) Mod 1000000007的结果即可. Input 第1行:一个数T,表示后面用作输入测…
51Nod - 1228 序列求和 (自然数幂和+伯努利数)
https://vjudge.net/problem/51Nod-1228 Description T(n) = n^k,S(n) = T(1) + T(2) + ...... T(n).给出n和k,求S(n). 例如k = 2,n = 5,S(n) = 1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 55. 由于结果很大,输出S(n) Mod 1000000007的结果即可. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 5000) 第2 -…
51nod 1228 序列求和 ( 1^k+2^k+3^k+...+n^k )
C为组合数,B为伯努利数 具体推到过程略 参考博客:http://blog.csdn.net/acdreamers/article/details/38929067# (我的式子和博客中的不一样,不过思想是一样的) 具体见代码: + ; + ; LL C[maxn][maxn]; LL inv[maxn]; LL B[maxn]; LL n, k; void init() { scanf("%lld%lld", &n, &k); } void getC() { C[][…
51Nod 1228 序列求和
T(n) = n^k,S(n) = T(1) + T(2) + ...... T(n).给出n和k,求S(n). 例如k = 2,n = 5,S(n) = 1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 55. 由于结果很大,输出S(n) Mod 1000000007的结果即可. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 5000) 第2 - T + 1行:每行2个数,N, K中间用空格分割.(1 <= N <= 10^18…
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 50000\) 等幂求和 多项式求逆元\(O(mlogm)\)预处理伯努利数,然后可以\(O(m)\)回答 因为是任意模数,所以要用拆系数fft 拆系数fft+多项式求逆元,写的爽死了 具体内容可能会写学习笔记 注意: 多项式求逆元里拆系数,不能只更新 .x= ,这样的话y还保留以前的值就错了 因为使用…
51nod 1258 序列求和 V4
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1258 1258 序列求和 V4 基准时间限制:8 秒 空间限制:131072 KB 分值: 1280 难度:9级算法题 收藏 关注 T(n) = n^k,S(n) = T(1) + T(2) + ...... T(n).给出n和k,求S(n). 例如k = 2,n = 5,S(n) = 1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 55. 由于结…
[51nod 1822]序列求和
\(k\leq 200000\) 考虑转化成枚举 \(k\) 的形式 我们错位相减! \[A_k=\sum_{i=1}^N i^K\times R^i \\ RA_k=\sum_{i=2}^{N+1} (i-1)^KR^i \\ (R-1)A_k=N^kR^{N+1}+\sum_{i=1}^{N}[(i-1)^k-i^k]R^i \] 二项式展开! \[(R-1)A_k=N^kR^{N+1}+\sum_{i=1}^{N}[\sum_{j=0}^k(-1)^{k-j}i^{j}-i^k]R^i \…
[51nod]1229 序列求和 V2(数学+拉格朗日差值)
题面 传送门 题解 这种颓柿子的题我可能死活做不出来-- 首先\(r=0\)--算了不说了,\(r=1\)就是个裸的自然数幂次和直接爱怎么搞怎么搞了,所以以下都假设\(r>1\) 设 \[s_p=\sum_{i=1}^n i^pr^i\] 我们要求的就是\(s_k\) 因为有 \[s_k=\sum_{i=1}^n i^kr^i\] \[rs_k=\sum_{i=2}^{n+1}r^{i}(i-1)^k\] 两个柿子减一减 \[(r-1)s_k=r^{n+1}n^k-r+\sum_{i=2}^nr…
【51Nod1258】序列求和V4(FFT)
[51Nod1258]序列求和V4(FFT) 题面 51Nod 多组数据,求: \[Ans=\sum_{i=1}^ni^k,n\le 10^{18},k\le50000\] 题解 预处理伯努利数,时间复杂度\(O(nlogn)\) 然后利用伯努利数求和即可. \[\sum_{i=1}^n i^k=\frac{1}{k+1}\sum_{i=0}^kB_iC_{k+1}^i(n+1)^{k+1-i}\] 预处理需要多项式求逆,因为模数不太好,所以需要\(MTT\) #include<iostream…
HDU 5358 First One 求和(序列求和,优化)
题意:给定一个含n个元素的序列,求下式子的结果.S(i,j)表示为seq[i...j]之和.注:对于log20可视为1.数据量n<=105. 思路:即使能够在O(1)的时间内求得任意S,也是需要O(n*n)来求和的. 对于这种题,一般就是研究式子,看有什么办法可以减少复杂度. 看到式子中的向下取整符号了吗?很多数的取整结果是相同的,即使给个2147483647取整也只是30多而已(噗,忘了多少). 而对于这个式子,S最大也不会超过longlong,确切计算,小于234.那么取log之后的范围这么…