取模!了解一下!

简介: 取模!了解一下!

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;
}
相关文章
|
2月前
|
存储 数据采集 监控
如何解决取模算法中数据倾斜的问题?
【10月更文挑战第25天】在实际应用中,需要根据具体的数据特点、系统架构和业务需求,选择合适的方法或方法组合来优化取模算法的数据分片效果。
|
7月前
|
存储
开散列哈希桶
开散列哈希桶
|
Java C++ Python
负数取余,取余和取模
负数取余,取余和取模
|
C语言 Python
左移(<<),右移(>>), (i++ 如果没有接收方,那么“先使用”,如何理解?),取余和取模一样吗?
左移(<<),右移(>>), (i++ 如果没有接收方,那么“先使用”,如何理解?),取余和取模一样吗?
取余运算的使用
取余运算的使用
235 0
|
存储 索引
leetcode【哈希表—简单】1.两数之和
leetcode【哈希表—简单】1.两数之和
leetcode【哈希表—简单】1.两数之和
|
算法 Java 容器
学前知识准备(递归、取模与取余)
程序调用自身的编程技巧称为递归( recursion)。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。
144 0
|
Java C语言 C++
C深剖 “取模取整”
目录 一:四大取整 1.1、 0向取整 1.2、 地板取整(-∞取整) 1.3、 +∞取整 1.4、 四舍五入取整 1.5、 例子汇总 二:取模 / 取余 2.1、 概念 2.2、 示例(C和Python) 2.3、 取余和取模一样吗? 2.4、 计算数据同符号 2.5、 计算数据不同符号 2.6、 总结
C深剖 “取模取整”
|
机器学习/深度学习 算法 索引
【算法】哈希表 ( 两数之和 )
【算法】哈希表 ( 两数之和 )
162 0
【算法】哈希表 ( 两数之和 )
|
算法 Java
只出现一次的数(哈希/排序/位运算)
只出现一次的数(哈希/排序/位运算)