《任何一个整数模9同余于它的各数位上数字之和》
2016-03-02 22:04
791 查看
在做https://leetcode.com/problems/add-digits/这道题时,发现了这个问题。即
任何一个整数模9同余与它的各数位上的数字之和。
参考地址:http://www.cnblogs.com/Rinyo/archive/2012/12/20/2826755.html
任何一个整数模9同余与它的各数位上的数字之和。
具体证明过程如下: 设自然数N=a a[n-1]…a[0],其中a[0],a[1]、…、a 分别是个位、十位、…上的数字 再设M=a[0]+a[1]+…+a 求证:N≡M(mod 9). 证明: ∵ N=a a[n-1]…a[0]=a *10^n+a[n-1]*10^(n-1)+…+a[1]*10+a[0]. 又∵ 1≡1(mod 9), 10≡1(mod 9), 10^2≡1(mod 9), … 10^n≡1(mod 9). 上面这些同余式两边分别同乘以a[0]、a[1]、a[2]、…、a ,再相加得: a[0]+a[1]*10+…+a *10^n≡(a[0]+a[1]+…+a )(mod 9), 即 N≡M(mod 9),得证。 有了这个性质就容易解决本题了 在计算过程中,可以不断mod 9,因为我们知道有这样两个性质: (A+B)mod C = ((A mod C) + (B mod C))mod C (AB)mod C = ((A mod C)×(B mod C)) mod C 还要注意,如果余数为0,则输出9
参考地址:http://www.cnblogs.com/Rinyo/archive/2012/12/20/2826755.html
相关文章推荐
- 策略模式
- MSSQL 基础知识002
- python中的map,filter,zip函数
- 第5章 面向对象(基础篇)
- KEIL MDK STM32如何建立工程
- KEIL MDK STM32如何建立工程
- 关于git初始化后无 .git文件生成的问题
- DSP 2812: 使用C++封装外设时钟控制
- usermod修改用户属性
- 插入类排序----直接插入排序
- Jetty实战之 嵌入式Jetty集成Spring运行
- hdoj 1874 畅通工程续【dijkstra、floyd、spfa】
- 自定义搜索框(SearchView)
- 堆的申请和释放2
- 关于冒泡排序算法的初学错误认识
- 1086. Tree Traversals Again (25)
- ASP.NET 4 视频教程 风云之旅系列课程
- undefined reference to `clock_gettime’ 链接错误 解决方法
- 【慕课笔记】4-1 JDK内置的进制转换
- java中的三大修饰符static、final、abstract