首页 > 其他分享 >数学知识模板之试除法

数学知识模板之试除法

时间:2023-03-19 21:14:52浏览次数:32  
标签:int vector 之试 数学知识 除法 模板

试除法判定质数

bool is_prime(int x)
{
	if(x < 2) return false;
	for(int i = 2; i <= x / i;i ++ )
		if(x % i == 0) return false;
	return true;
}

试除法分解质因数

void divide(int x)
{
	for(int i = 2;i <= x / i;i ++ )
	{
		int s = 0;
		while(x % i == 0)
		{
			s ++;
			x /= i;
		}
		cout << i << ' ' << s << endl;
	}
	if(x) cout << x << ' ' << 1 << endl;// 如果x大于1,说明存在一个大于根号x的质因子
	
/*
如果N = p1^c1 * p2 ^ c2 * p3 ^ c3 *... * pk & ck;
约数个数 = (c1 + 1)(c2 + 1)...(ck + 1)
所有约数之和 = (p1 ^ 0 + p1 ^ 1 + ... + p1 ^ c1)* ... * (pk ^ 0 + pk ^ 1 + ... + pk ^ ck)
*/
}

试除法求所有约数

vector<int> get_dividors(int x)
{
	vector<int> res;
	for(int i = 1;i <= x / i;i ++ )
	{
		if(x % i == 0 )
		{
			res.push_back(i);
			if(x / i != i) res.push_back(x / i);
		}
	}
	sort(res.begin(),res.end());
	return res;
}


标签:int,vector,之试,数学知识,除法,模板
From: https://www.cnblogs.com/zhiao/p/17234272.html

相关文章

  • 数学知识模板之筛法求素数
    筛法求素数1.朴素筛法求素数intprimes[N],cnt;boolst[N];voidget_primes(intn){ for(inti=2;i<=n;i++) { if(st[i])continue; primes[cnt++]=......
  • 数学知识3.2-卡特兰数
    一、卡特兰数卡特兰数:\(C_{2n}^{n}-C_{2n}^{n+1}=\frac{C_{2n}^{n}}{n+1}\)。卡特兰数满足递推公式:设\(C_n=\frac{C_{2n}^{n}}{n+1}\),\(C_1=1\),\(C_n=C_{n-1}\frac{4n-2......
  • 除数为常数的除法实现
    除数为常数的除法实现,当然除数为变量的方式是兼容常数的运算,只是针对常数运算,通常也有几种方法,供大家参考。方法一:  把除数转化为小数,采用乘法运算,比如:  a[15:0]/8'......
  • 除法的实现2
    除法的实现,相对于加减乘要麻烦一些。当然目前除法主要支持无符号数除法,我们分为两类进行介绍,一类是被除数是变量,即a/b这种,一类是被除数是常量,即a/B这种。1.被除数常量,方法......
  • 除法的实现
    对于除法的实现,相对于加减乘要麻烦一些。当然目前除法主要支持无符号数除法,我们分为两类进行介绍,一类是被除数是变量,即a/b这种,一类是被除数是常量,即a/B这种。1.被除数常量......
  • 算法基础1.3.4高精度除法
    前言先看高精度加法的文章,如果没有看,我把高精度加法文章中的总结前言放到这里该文章探讨的高精度代指C++中极大整数的计算,不是浮点数(y总说那个少见,不讲)。这个问题只在C......
  • 给闺女写了一个99乘法除法练习题
    #99乘法练习importrandomimporttimenum=0start=time.time()forxinrange(10):a=random.randint(1,9)b=random.randint(1,9)print('请小余同......
  • pat乙级 1017 A除以B 模拟除法
    #include<stdio.h>#defineMAX_A1000intA[MAX_A];intB;/*除数*/intnum;/*A被除数有多少位*/voidread_AB();voiddivision_print();/*************......
  • 组合数学知识整理_USTC-IAT期末复习版(已完结)
    组合数学知识整理_USTC-IAT期末复习版(已完结)第一章排列与组合第二章递推关系与母函数第三章容斥原理与鸽巢原理第四章polya定理......
  • SQL server 的除法运算
     select300/(301)*100查询结果:0,由于数值是INT类型,无法得到小数点的结果。怎么整?分母加0.0select300/(301+0.0)*100查询结果:99.667700......