Submit | All submissions | Best solutions | Back to list |
ZSUM - Just Add It |
For two given integers n and k find (Zn + Zn-1 - 2Zn-2) mod 10000007, where Zn = Sn + Pn and Sn = 1k + 2k + 3k + … + nk and Pn = 11 + 22 + 33 + … + nn.
Input
There are several test cases (≤ 10000). In each case two space separated positive integers n and k are given.
For last test case n and k are given as 0 0, which is not to be processed.
Constraints
1 < n < 200000000 0 < k < 1000000
Output
For each case print the asked value in separate line.
Example
Input: 10 3 9 31 83 17 5 2 0 0 Output: 4835897 2118762 2285275 3694
Added by: | Manohar Singh |
Date: | 2011-09-04 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 |
Resource: | Manohar Singh |
hide comments
|
||||||||||||
2015-06-11 18:11:07
Python coders please do not attempt the problem, it will be a total waste of time as will always get a TLE |
||||||||||||
2015-06-06 09:16:04 Aman Agarwal
Modular exponentiation would help 100th classical on spoj ;) |
||||||||||||
2015-05-27 20:57:00 THECOLDONE
thanks @ deadbrain |
||||||||||||
2015-01-27 14:55:09 deadbrain
for those who don't know how to solve the problem efficiently, read Modular exponentiation wiki article first... Lot to learn from this question. |
||||||||||||
2014-05-03 09:28:40 sarelfeniel
Great problem. @Francky I hope one day to discover the secrets that you seem to have found! |