巧妙的取模算法


题目一 : n%2^16

题目二 : n%65537


题目一writeup:

#include
using namespace std;
int main()
{
    int n,m = (1<<16)-1;
    cin >> n;
    cout << (n & m);
    return 0;
}

利用位运算与,(1<<16)-1 的二进制前15位全是一,于是保留n的前15位,即求n%(1<<16)


题目二writeup
此题是数学题


巧妙的取模算法_第1张图片
推导过程

代码略

你可能感兴趣的:(巧妙的取模算法)