三则混合运算下的取模

取模的一个简单性质:加法,减法,乘法,以及三则的混合运算在过程中取模与算出最终结果取模结果一样

这个性质使一些超出long long 的数据便于被记录存储并运算:

首先用string s ; cin >> s;来写入数据,读成字符串之后虽然进行了记录,但并不能很方便地进行运算与使用,

这时使用for()循环,一点点读取字符串,并对每一步的结果都进行取模,则可

顺利将很大的数据转化为一个可以用int 或 long long 存储的数据

如下题代码(红点标记的两行)就是利用了过程与结果取模一致这个性质

https://www.nowcoder.net/acm/contest/71/C

原文地址:https://www.cnblogs.com/MekakuCityActor/p/8412818.html

时间: 2024-11-11 17:53:27

三则混合运算下的取模的相关文章

算数运算——四则与取模运算

运算符:进行特定操作的符号.例如:+表达式:用运算符连起来的式子叫做表达式.例如:20 + 5.又例如:a + b 四则运算:加:+减:-乘:*除:/ 取模(取余数):% 首先计算得到表达式的结果,然后再打印输出这个结果.复习一下小学一年级的除法公式:被除数 / 除数 = 商 ... 余数 对于一个整数的表达式来说,除法用的是整除,整数除以整数,结果仍然是整数.只看商,不看余数.只有对于整数的除法来说,取模运算符才有余数的意义. 注意事项: 1. 一旦运算当中有不同类型的数据,那么结果将会是数据

iOS中的图像处理(三)——混合运算

有时候,单独对一张图像进行处理是很难或者根本达不到我们想要的效果的.一个好的滤镜效果的诞生,往往要经过很多复杂步骤.细致微调.图片应用效果观察以及很多图层叠加. 我在JSWidget上发现了一些常用混合算法,对应着一些常用混合模式,通过这些blend modes,我们可以指定两张图像如何混合. 不过在此之前,我们需要纯颜色图像和渐变图像来做辅助: [cpp] view plaincopy + (UIImage *)imageWithColor:(UIColor *)color size:(CGS

三个数混合运算和三层架构

1,数据访问层 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Data.SqlClient; using System.Windows.Forms; namespace SQL1 { class DB1//数据访问层! { public SqlConnection conn = new SqlConnecti

Math——取模运算及取余运算

取模运算及取余运算 取余运算(Complementation)即我们小学时学的数学算术概念,而取模运算(Modulus Operation)常用于程序设计中 公式 a%b = a - (a/b * b) 取整运算 要明白取模运算和取余运算之间的区别,首先要了解取整运算(Round Operation) 取整运算常用的有三种,向负无穷取整,向正无穷取整,向零取整 以lua语言为例,lua的math数学库提供三个取整函数,floor向负无穷取整,ceil向正无穷取整,modf向零取整 (PS:lua

mongoDB 高级查询之取模查询$mod

http://hancang2000.i.sohu.com/blog/view/235140698.htm $mod取模运算 查询age取模10等于0的数据 db.student.find( { age: { $mod : [ 10 , 1 ] } } ) 举例如下: C1表的数据如下: > db.c1.find() { "_id" : ObjectId("4fb4af85afa87dc1bed94330"), "age" : 7, &qu

取模性质,快速幂,快速乘,gcd和最小公倍数

一.取模运算 取模(取余)运算法则: 1. (a+b)%p=(a%p+b%p)%p; 2.(a-b)%p=(a%p-b%p)%p; 3.(a*b)%p=(a%p * b%p)%p; 4.(a^b)%p=(   (a%p)^b  )%p; 5. (  (a+b)%p+c  )%p=( a+(b+c)%p  )%p; 6.( a*(b*c)%p )%p =( c*(a*b)%p )%p; 7.( (a+b)%p*c )%p= ( (a*c)%p + (b*c)%p )%p; 几条重要性质: 1.a≡

位运算之——按位与(&)操作——(快速取模算法)

由于位运算直接对内存数据进行操作,不需要转成十进制,因此处理速度非常快. 按位与(Bitwise AND),运算符号为& a&b 的操作的结果:a.b中对应位同时为1,则对应结果位也为1. 例如: 10010001101000101011001111000 & 111111100000000 --------------------------------------------- 10101100000000 对10101100000000进行右移8位得到的是101011,这就得

[转]取模运算和求余运算的区别

[转]取模运算和求余运算的区别 通常情况下取模运算(mod)和求余(rem)运算被混为一谈,因为在大多数的编程语言里,都用'%'符号表示取模或者求余运算.在这里要提醒大家要十分注意当前环境下'%'运算符的具体意义,因为在有负数存在的情况下,两者的结果是不一样的. 对于整型数a,b来说,取模运算或者求余运算的方法都是: 1.求 整数商: c = a/b; 2.计算模或者余数: r = a - c*b. 通常常用的是正数之间取模或求余.下面的可以先不关心. —————————————————————

51NOD 1116 K进制下的大数(字符串取模 + 枚举)

传送门 1116 K进制下的大数 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注 有一个字符串S,记录了一个大数,但不知这个大数是多少进制的,只知道这个数在K进制下是K - 1的倍数.现在由你来求出这个最小的进制K. 例如:给出的数是A1A,有A则最少也是11进制,然后发现A1A在22进制下等于4872,4872 mod 21 = 0,并且22是最小的,因此输出k = 22(大数的表示中A对应10,Z对应35). Input 输入大数对应的字符串S