家长易论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1449|回复: 4
打印 上一主题 下一主题

[其他] 杯赛必会:求余数的做法(公式技巧)

[复制链接]
跳转到指定楼层
楼主
发表于 2013-11-3 09:44:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
document对象

马上注册,结交更多家长,享用更多功能,让你轻松玩转家长易社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
  小学奥数杯赛题中,求余数是常见的类型,如何简单快速的求余数,我们这里有个公式,供广大学生套用。
  个人建议:在您看这份文档的同时,准备一支笔,一张草稿纸。如果看到例题,跟我的步骤,一步一步地同时写下来,这样比光看屏幕,要理解得更快!
  我在自己的讨论稿文档里,求余的时候,都会用到mod这个运算符。
  mod:模。意思就是求余数。
  比如说:5 mod 3=2, 100 mod 11=1
  读作:五模三余二,一百模十一余一
  这是标准的公式化写法,大家可能不太熟悉,但是知道意思了,其实也很简单。引入Mod,主要是可以用数学公式来写,而且可以把求余数的问题化简成为普通的四则运算的问题,也比较容易表达。
  在讲如何求余之前,先来普及一下余数的一些性质。
  首先就是余数的加减法:比如说100除以7余2,36除以7余1。那么100+36除以7余几呢?或者100-36除以7余几呢?很显然,只要用100除以7的余数2与36除以7的余数1进行加减就可以得到答案。通过这个例子可以很明显的看出来,余数之间是可以加减的。
  总结写成书面的公式的话,就是:(M+N) mod q=((M mod q)+(N mod q)) mod q
  然后我们再看余数的乘法:我们继续来看上面这个例子,如果要求100*36除以7的余数是多少,该怎么求呢?
  我们不妨来这样做:
  100=98+2=7*14+2,36=35+1=7*5+1;
  这时100*36=(7*14+2)(7*5+1)=7*14*7*5 + 2*7*5 + 7*14*1 + 2*1
  很明显,100*36除以7的余数就等于2*1=2
  于是我们可以得出这样的一个结论:求M*N除以q的余数,就等于M除以q的余数 乘以 N除以q的余数。
  类似的,如果是求N^m 除以q的余数呢?只要我们将N^m=N*N*N*...*N,也就是说分别地用每个N除以q的余数相乘,一共m个,得出的结果再对q求余数,即可求出结果。
  举例来说:求11^4除以9的余数。化成公式即是:11^4 mod 9=?
  11^4 mod 9 = (9+2)^4 mod 9 = 2^4 mod 9 =16 mod 9 = 7
  于是我们可以总结出这样的公式:
  M*N mod q=(M mod q)*(N mod q) mod q
  ( M^n mod q = (M mod q)^n mod q )
  那么,我们知道了这些性质之后对解题又有什么帮助呢?
  As we all know,如果一个数乘以1,还是等于原数;而1的任意次方,还是等于1。
  所以在解答这一类的问题的时候,只要我们尽量把计算中的余数凑成与1相关的乘式,结果显然会好算很多的。(或者-1,2之类的比较容易进行计算的数字都可以,因题而异。)
分享到:  QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖
沙发
发表于 2013-11-4 09:11:57 | 只看该作者
板凳
发表于 2014-1-17 10:06:15 | 只看该作者
谢分享,感谢楼主
地板
发表于 2014-1-21 11:08:06 | 只看该作者
谢谢分享了
5
发表于 2014-1-27 09:12:29 | 只看该作者
谢谢分享了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|网站地图|家长易论坛 ( 鄂ICP备16011226号-1  点我聊天

GMT+8, 2024-5-6 03:30

Powered by 家长易

快速回复 返回顶部 返回列表