Изменения рейтингов за последние раунды временно удалены. Скоро они будут возвращены. ×

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

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

How to calculate (a power b) mod p correctly if b is exceeding long long integer limit in c++.

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

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

O(log2(b))?

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

Let b = b1b2.....bn(concatenated) By induction, Let x = a ^ (b1b2...bk) (mod p)

a ^ (b1b2....b(k+1)) = ( a^(b1b2....bk) ) ^ 10 * (a ^ b(k+1)) = x^10 * a^b(k+1)

now you can calculate modulo without overflow

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

first i need to store b. But b is exceeding the integer limit! How can i store b so that i correctly calculate (a power b) mod p. p is prime.