初级光能
因数:一个数能被i整除,那i就是那一个数的因数(最大公约数的课时老师讲过怎么求)
用枚举法我就不说了
平方根:平方根也叫开平方,如果一个数能被两个完全相同的i相乘得到,那么i就是那个数的平方根。
用sqrt求,格式:sqrt(n)。需要加cmath头文件
质数(素数):只能被1和他自身整除的数(1不是质数)
建议用bool函数求质数,如果在2到n-1之间没有他的因数,那他就是质数(1需要特判)
合数:除了能被1和他自身整除,还有其他质数。
没搜百度,纯属手打!!!
真的,真的,真的!!!
新手天翼
因数,数学名词。
假如a*b=c(a、b、c都是整数),那么我们称a和b就是c的因数。
需要注意的是,唯有被除数,除数,商皆为整数,余数为零时,此关系才成立。 反过来说,我们称c为a、b的倍数。在研究因数和倍数时,不考虑0。
平方根,是指自乘结果等于的实数,表示为±(√x),读作正负根号下x或x的平方根。其中的非负数的平方根称为算术平方根。正整数的平方根通常是无理数。可由下式唯一定义:在分数指数中,我们有:依定义,可知开平方运算对乘法满足分配律,即:注意若n是非负实数且时,因为必定是正数,但有正负两个解。 应等于±;即(见绝对值)。
质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。
根据算术基本定理,每一个比1大的整数,要么本身是一个质数,要么可以写成一系列质数的乘积;而且如果不考虑这些质数在乘积中的顺序,那么写出来的形式是唯一的。最小的质数是2。
打字不累,只求采纳
初级光能
@陈曦 别信李素妍的胡话:我找到了她抄百度的证据
https://www.zhihu.com/question/283579414
http://www.99cankao.com/electronic/pingfanggen.php
https://wenku.baidu.com/view/1a526aae312b3169a551a473.html
https://wenwen.sogou.com/z/q724339630.htm
https://wenwen.sogou.com/z/q779603738.htm
https://wenwen.sogou.com/z/q100299187.htm
我是用搜狗找的。
新手天翼
因数
先分解成质因数相乘的形式 x=[(a1)^(n1)][(a2)^(n2)]……[(ak)^(nk)] 因数个数为(n1+1)(n2+2)……(nk+1) 例如120=(2^3)*(3^1)*(5^1),因数个数为=(3+1)*(1+1)*(1+1)=16
平方根
取第一位,是几的平方,然后写上去,相减, 余数在用求得到的第一个数的20倍来除,然后再加上得数, 反正有方法的。
比如2, 1*1 =1, 所以你得1***, 2-1=1, 后面填两个零,余数是100, 然后100里有5个20, 但是20+5=25, 所以只能有4个,你得4***,变成1.4, 100-24*4=4, 再填00,余400, 400里有一个280, 所以填1,得1.41, 400-281=119, 填00, 余11900, 再试初2820, 得4, 11900-2824*4= 604, 再填00, 余60400, 往下算就是了。做的时候也像除法,只是得数在上面,左侧面要放上面数的20倍+下个得数,好做乘法和余数。 和普通除法不同是两位两位的下。完了填零也是两位两位的填。
质数
比如一个数n,比他小的质数有{2,3,5,7,11,13}。怎么判断n是否质数?
n只要除以{2,3,5,7,11,13}里的所有数,都除不尽,那么n就也是质数了,对吧。
而实际上,这个序列可以缩小。n只要除以这个序列里面,所有比根号下n小的质数,都除不尽,那么n就是质数了。因为如果一个质数大于根号n,而n可以除尽它,那么n必然也可以除尽一个更小的质数。
例如21,它可以除尽7,而它同样可以除尽3。所以判断21是否质数,只需要判断21是否可以除尽2和3就可以了。5和7和11就不需要判断了。
初级光能
一、 因数
因数,或称为约数 ,定义:整数a/整数b (b≠0) 的商正好是整数而没有余数,我们就说b是a的因数。
二、 开平方根函数
C++语言中开平方根函数是sqrt(x)
求实数x的平方根,得到的是一个double类型的结果。
添加头文件 #include<cmath>
三、 质数
质数:又称素数,指只能被1和它本身整除的,大于1的自然数。
1不是质数
四、 合数
与质数相对,除了能被1和其本身整除,还能被其它数整除的数,叫做合数
高级光能
一、 因数 整体难度☆☆☆
因数/约数
1)定义:a/b(a,b为整数,b≠0)的商是整数且没有余数。
2)常见题型
①基础/拔高:求x~y之间有多少个k的因数 难度☆☆
循环,从x开始,到y结束,一旦i能被k整除则cnt++
②挑战:求x~y之间有多少个因数对 难度☆☆☆☆
因数对定义(编):因数对有两个数,必须都是k的因数,且第一个数是第二个数的因数
循环,从x开始,到y结束,一旦i能被k整除则判断i的所有因数是否也是k的因数
简洁做法 循环,从x开始,到y结束,一旦i能被k整除则找k和i的公因数(公因数即为两个数共有的因数)
拓展 最大公因数与最小公倍数
最大公因数 a与b共有的因数中最大的
最小公倍数 a与b共有的倍数(即a,b为这个数的因数)中最小的
2 平方根 难度☆☆☆☆☆
1) 定义:a*a(即为a的平方)=b,那么a是b的平方根
2) 常见题型(一般这类题不会直接让你求某数的平方根,而是间接去运用)
①基础/拔高 难度☆☆☆☆ 判断x~y中有多少个质数
质数即为只有1和它自己本身2个因数的数(2,,,,5,7,11等均是质数,1和0既不是质数也不是合数)
循环,从x开始,到y结束,一旦i只有两个因数,cnt++
结果 超时……
优化算法 循环,从x开始,到sqrt(y)结束,一旦i只有两个因数,cnt++//sqrt为开平方函数,用时需要加头文件#include<cmath>
结果 一般题可AC,市赛则少数点超时
优化算法二 循环,从x开始,到sqrt(y)结束,一旦prime(i)==1,cnt++
其中prime为自定义函数
结果 市赛AC有点险,省选超时2个点左右
优化算法三 用埃氏筛
结果 AC国家奥林匹克大赛
PS 有没有感到平方根的可怕??(其实还行啦)
3 质数 整体难度☆☆☆☆☆
1) 定义 上面已经说了,质数即为只有1和它自己本身2个因数的数(2,,,,5,7,11等均是质数,1和0既不是质数也不是合数)
2) 常见题型
①基础/拔高 参见平方根的基础拔高题
②超级挑战 直接上网址!!!难度☆☆☆☆☆
这题把我搞得心拨凉拨凉的……最容易超时,要小心!
最后,上一份课堂讲义:
中级光能
因数
先分解成质因数相乘的形式 x=[(a1)^(n1)][(a2)^(n2)]……[(ak)^(nk)] 因数个数为(n1+1)(n2+2)……(nk+1) 例如120=(2^3)*(3^1)*(5^1),因数个数为=(3+1)*(1+1)*(1+1)=16
平方根
取第一位,是几的平方,然后写上去,相减, 余数在用求得到的第一个数的20倍来除,然后再加上得数, 反正有方法的。
比如2, 1*1 =1, 所以你得1***, 2-1=1, 后面填两个零,余数是100, 然后100里有5个20, 但是20+5=25, 所以只能有4个,你得4***,变成1.4, 100-24*4=4, 再填00,余400, 400里有一个280, 所以填1,得1.41, 400-281=119, 填00, 余11900, 再试初2820, 得4, 11900-2824*4= 604, 再填00, 余60400, 往下算就是了。做的时候也像除法,只是得数在上面,左侧面要放上面数的20倍+下个得数,好做乘法和余数。 和普通除法不同是两位两位的下。完了填零也是两位两位的填。
质数
比如一个数n,比他小的质数有{2,3,5,7,11,13}。怎么判断n是否质数?
n只要除以{2,3,5,7,11,13}里的所有数,都除不尽,那么n就也是质数了,对吧。
而实际上,这个序列可以缩小。n只要除以这个序列里面,所有比根号下n小的质数,都除不尽,那么n就是质数了。因为如果一个质数大于根号n,而n可以除尽它,那么n必然也可以除尽一个更小的质数。
例如21,它可以除尽7,而它同样可以除尽3。所以判断21是否质数,只需要判断21是否可以除尽2和3就可以了。5和7和11就不需要判断了。