蓝桥杯的数论总结

声明

我只是把数论相关的东西放在了一起,会有自己的理解,所以会有错误哈,欢迎在评论区中指出,另外有啥看不懂的也可以在评论区留言,我看到后就回你

质数

暴力

  • 质数一般都是奇数,除了2
  • 小于2的不用考虑了
java 复制代码
boolean prime(int n){
	if(n<2)
		return false;
	
	if(n!=2 && n % 2==0 )
		return false;
	for(int i=2;i<n;i++){
		if(n%i==0)
			return false;
	}
	return true;
}

优化1 对for循环的上界进行调整

这个优化你见过,就是将for循环的上界改为sqrt(n),但是这样写的话是比较费时间的,我听一位大佬说的,sqrt这个函数比较慢,倒不如这么写

java 复制代码
int upperBound = sqrt(n);
for(int i=2;i<=upperBount;i++)
	...

这样不用重复计算了

当时那位大佬推荐下面的写法

java 复制代码
for(int i=2;i<=n/i;i++)
	...

这个记住一下,这个知识点我还没有学会

相关推荐
汉克老师1 小时前
第十四届蓝桥杯青少组C++选拔赛[2023.2.12]第二部分编程题(4、最大空白区)
c++·算法·蓝桥杯·蓝桥杯c++·c++蓝桥杯
007php0073 小时前
某大厂MySQL面试之SQL注入触点发现与SQLMap测试
数据库·python·sql·mysql·面试·职场和发展·golang
JosieBook21 小时前
【程序人生】有梦想就能了不起,就怕你没梦想
程序人生·职场和发展
scx201310041 天前
P13929 [蓝桥杯 2022 省 Java B] 山 题解
c++·算法·蓝桥杯·洛谷
data myth1 天前
力扣1210. 穿过迷宫的最少移动次数 详解
算法·leetcode·职场和发展
Greedy Alg1 天前
LeetCode 240. 搜索二维矩阵 II
算法·leetcode·职场和发展
墨染点香1 天前
LeetCode 刷题【68. 文本左右对齐】
算法·leetcode·职场和发展
GalaxyPokemon1 天前
LeetCode - 202. 快乐数
算法·leetcode·职场和发展
吃着火锅x唱着歌1 天前
LeetCode 522.最长特殊序列2
算法·leetcode·职场和发展
CoderYanger2 天前
MySQL数据库——3.2.1 表的增删查改-查询部分(全列+指定列+去重)
java·开发语言·数据库·mysql·面试·职场和发展