Algoritmo C / C ++: A maneira mais rápida de calcular (2 ^ n)% d com um n e d números inteiros de 32 ou 64 bits
Estou procurando um algoritmo que permita calcular(2^n)%d
com ed 32 ou 64 bits inteiros.
O problema é que é impossível armazenar2^n
na memória, mesmo com bibliotecas de multiprecisão, mas talvez exista um truque para calcular(2^n)%d
apenas usando números inteiros de 32 ou 64 bit
Muito obrigado