数论(Number Theory)

  以下列举一些重要的规则:

1. 良序原则(Well ordering principle):每一个自然数集合中都有一个最小值。

2. 有限归纳(finite induction):设S为N的一个子集合,如果s符合以下两点:1)s中包含了0,2) 如果k属于s,那么k+1也属于s,那么s=N。


 

第一部分:整除性和约数

  1. 如果 d|a, 存在k为整数, 使得a=kd。注意0能被任何非0的整数整除。

  2. 如果 d|a 且 d>=0, 我们说d是a的约数

  3. 任何数a能被其平凡约数1,a整除,其非平凡约数也称为a的因子。

  4. 整除的规律如下:

  • 任何数都能被1整除。
  • 个位上是2、4、6、8、0的数都能被2整除。
  • 每一位上数字之和能被3整除,那么这个数就能被3整除。
  • 最后两位能被4整除的数,这个数就能被4整除。
  • 个位上是0或5的数都能被5整除。
  • 个数只要能同时被2和3整除,那么这个数就能被6整除。
  • 把个位数字截去,再从余下的数中,减去个位数的2倍,差是7的倍数,则原数能被7整除。
  • 最后三位能被8整除的数,这个数就能被8整除。
  • 每一位上数字之和能被9整除,那么这个数就能被9整除。
  • 若一个整数的末位是0,则这个数能被10整除
  • 若一个整数的奇位数字之和与偶位数字之和的差能被11整除,则这个数能被11整除。11的倍数检验法也可用上述检查7的「割尾法」处理!过程唯一不同的是:倍数不是2而是1!
  • 若一个整数能被3和4整除,则这个数能被12整除。
  • 若一个整数的个位数字截去,再从余下的数中,加上个位数的4倍,如果差是13的倍数,则原数能被13整除。如果差太大或心算不易看出是否13的倍数,就需要继续上述「截尾、倍大、相加、验差」的过程,直到能清楚判断为止。
  • 若一个整数的个位数字截去,再从余下的数中,减去个位数的5倍,如果差是17的倍数,则原数能被17整除。如果差太大或心算不易看出是否17的倍数,就需 要继续上述「截尾、倍大、相减、验差」的过程,直到能清楚判断为止。b 若一个整数的末三位与3倍的前面的隔出数的差能被17整除,则这个数能被17整除。
  • 若一个整数的个位数字截去,再从余下的数中,加上个位数的2倍,如果差是19的倍数,则原数能被19整除。如果差太大或心算不易看出是否19的倍数,就需 要继续上述「截尾、倍大、相加、验差」的过程,直到能清楚判断为止。b 若一个整数的末三位与7倍的前面的隔出数的差能被19整除,则这个数能被19整除。
  • 若一个整数的末四位与前面5倍的隔出数的差能被23整除,则这个数能被23整除
  • 若一个整数的末四位与前面5倍的隔出数的差能被29整除,则这个数能被29整除
  • 若一个整数的末四位与前面的数的差能被73整除,则这个数能被73整除
  • 若一个整数的末四位与前面的数的差能被137整除,则这个数能被137整除

   5. 唯一分解定理:

 

题目:

1) http://blog.csdn.net/Lulipeng_cpp/article/category/1155316/1

2) ZOJ: 1007 1028 1088 1113 1133 1160 1222 1278 1284 1312 1314 1385 1489 1526 1530 1569 1577 1596 1601 1652 1657 1712 1797 1842 1889 1906 1951 2000 2022 2028 2060 2095 2105 2156 2189 2212 2233 2277 2288 2305 2316 2320 2330 2360 2371 2400 2410 2414

 

参考资料

  [1] ACM必看-数论

  [2] 2​0​1​0​北​大​A​C​M​暑​期​讲​义​数​学​题

  [3] A​C​M​数​论​模​板

 


 

posted @ 2014-07-27 09:55  算法研究  阅读(677)  评论(0编辑  收藏  举报