记 LeetCode 的一道题目:974. 和可被 K 整除的子数组
因为之前做过类似的题目 560. 和为K的子数组 ,所以想到用 「前缀和 」解决, 这个题解的主要目的是对 「取余」与「取模」进行记录,所以 前缀和 的用法就先不写了
取余 取模 同余定理
- 首先要了解取余和取模,他们的结果可能是不同的;
计算方法相同:
对于整型数a,b来说,取模运算或者求余运算的方法都是:
1.求 整数商: c = a / b;(它的正负导致结果的不同)
2.计算模或者余数: r = a - c * b
对取余和取模定义不同的语言中,两者的不同点只有一个
①取余运算在计算商值向0方向舍弃小数位
②取模运算在计算商值向负无穷方向舍弃小数位
举例:-7 Mod 4
取余:c = - 7 / 4 = - 1,r = - 7 - (- 1) * 4 = -3;
取模:c = - 7 / 4 = - 2,r = - 7 - ( - 2) * 4 = 1;