Блог пользователя n8118

Автор n8118, история, 11 лет назад, По-английски

how to calculate ncr % M when the value of n has greater range(n <= 10^12). M = 10^9 + 7.

  • Проголосовать: нравится
  • +5
  • Проголосовать: не нравится

»
11 лет назад, скрыть # |
 
Проголосовать: нравится -6 Проголосовать: не нравится
»
11 лет назад, скрыть # |
Rev. 2  
Проголосовать: нравится +8 Проголосовать: не нравится

For small M you can use Lucas's theorem.
For small N you can use Pascal's triangle.
For small R you can juse use slow algo in O(RlogM) by using factorial-formula.

»
11 лет назад, скрыть # |
 
Проголосовать: нравится -20 Проголосовать: не нравится

Please do not reply presently for this doubt as it is from a running contest https://www.codechef.com/FEB16/problems/STROPR

  • »
    »
    11 лет назад, скрыть # ^ |
     
    Проголосовать: нравится +10 Проголосовать: не нравится

    Come on, if for example someone needs help with Dijkstra but there's some long challenge having a problem about Dijkstra's algorithm, do you think nobody should say a word about Dijkstra during the long contest? Moreover, where do you see that problem? I ran over all problems and the only one about permutations was this one — https://www.codechef.com/FEB16/problems/SEAPERMS. But I don't really see how it's related to the question asked in the blog and also N<=10^5 in the Codechef's problem.