数论整理(一)//能被一些数整除 //

1.能被一些数整除 

(1)能被2整除的数,个位上的数都能被2整除
(2*)能被4整除的数,个位和十位所组成的两位数能被4整除
(3*)能被8整除的数,百位、十位和个位所组成的三位数能被8整除
(4)能被5整除的数,末尾是0或5
(5*)能被25整除的数,十位和个位所组成的两位数能被25整除
(6*)能被125整除的数,百位、十位和个位所组成的三位数能被125整除
(7)能被3整除的数,各个数位上的数字之和能被3整除
(8*)能被9整除的数,各个数位上的数字和能被 9 整除
(9)如果一个数既能被 2 整除又能被 3 整除,那么这个数能被 6 整除
(10)如果一个数既能被 2 整除又能被 5 整除,那么这个数能被 10 整除(即个位为0)
(11*)能被 11 整除的数,奇数位(从左往右数)上的数字和与偶数位上的数字和的差(大数减小数)能被 11 整除

2.素数的筛法(不是很大的数据)

Primes 中存放的都是素数,就是把素数的倍数都标记成素数。

#include<iostream>
#include<cstring>
using namespace std;
#define Max 1005 
int prime[Max];
void IsPrime(){
     memset(prime,1,sizeof(prime));
     prime[0]=0;
     prime[1]=0;
     for(int i=2;i*i<Max;i++){
     	if(!prime[i])
     	    continue;
     	for(int j=i*2;j<Max;j+=i)
            prime[j]=0;
	 }
} 
int main(){
	IsPrime();
	for(int i=1;i<=Max;i++) 
	    if(prime[i]!=0)
	       cout<<i<<endl;
} 

3.区间素数

给定N,M, N和M都很大,但是M-N却很小,让我们求出M-N中的素数,可以先用线性筛打表,然后输出N到M中的素数 

4.判定素数

肯定有那个O(sqrt N)的方法了

5.唯一定理

概念:任意一个大于0的正整数都能被表示成若干个素数的乘积且表示方法是唯一的

任意一个合数都可以写成如下形式:


a的因子数= (a1+1)×(a2+1)×....×(ar+1)

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值