取模!了解一下!

简介: 取模!了解一下!

50.png

嘤嘤嘤,快速幂取模都不会了???自闭了!

取模运算(“Modulo Operation”)和取余运算(“Complementation ”)两个概念有重叠的部分但又不完全一致。主要的区别在于对负整数进行除法运算时操作不同。取模主要是用于计算机术语中。取余则更多是数学概念。

取余应该这样写 (sum + xxx + MOD) % MOD 不是直接sum % MOD

计算机里面的取模运算 和数学的取余运算不太一样 然后你们直接sum%mod,会有 负数加正数了


#include <bits/stdc++.h>
using namespace std;
const int mo = 192608017;
long long int mi(long long int a,long long int b)
{
    long long int ans=1;
    a=a%mo;
    while(b!=0)
    {
        if(b&1)ans=ans*a%mo;
        b >>= 1;
        a=a*a%mo;
    }
    return ans;
}
int main()
{
    long long int n,m;
    long long int sum = 0;
    cin>>n;
    for(int i = 1;i <= n;i++)
    {
        cin>>m;
        sum = (sum + mi(m,i) + mo) % mo;//划重点!
    }
    cout<<sum%mo;
    return 0;
}
相关文章
|
6月前
|
算法 测试技术 C++
【位运算 拆位法】1835. 所有数对按位与结果的异或和
【位运算 拆位法】1835. 所有数对按位与结果的异或和
|
6月前
[leetcode 数位运算] 2939. 最大异或乘积 M
[leetcode 数位运算] 2939. 最大异或乘积 M
|
Java C++ Python
负数取余,取余和取模
负数取余,取余和取模
|
C语言 Python
左移(<<),右移(>>), (i++ 如果没有接收方,那么“先使用”,如何理解?),取余和取模一样吗?
左移(<<),右移(>>), (i++ 如果没有接收方,那么“先使用”,如何理解?),取余和取模一样吗?
|
C语言 Python
【C语言】负数取模、取余
首先谈谈关于数学取整的问题
取余运算的使用
取余运算的使用
218 0
|
测试技术 C语言 Python
【C除法和取余】除法和负数取余你真的会了吗?
【C除法和取余】除法和负数取余你真的会了吗?
144 0
【C除法和取余】除法和负数取余你真的会了吗?
|
机器学习/深度学习 C语言
C的|、||、&、&&、异或、~、!运算
C的|、||、&、&&、异或、~、!运算
100 0
|
算法 Java
只出现一次的数(哈希/排序/位运算)
只出现一次的数(哈希/排序/位运算)