蓝桥杯的数论总结

声明

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

质数

暴力

  • 质数一般都是奇数,除了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++)
	...

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

相关推荐
互联网杂货铺16 小时前
完美搭建appium自动化环境
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
鑫鑫向栄17 小时前
[蓝桥杯]修改数组
数据结构·c++·算法·蓝桥杯·动态规划
鑫鑫向栄17 小时前
[蓝桥杯]带分数
数据结构·c++·算法·职场和发展·蓝桥杯
枷锁—sha18 小时前
护网行动面试试题(2)
web安全·面试·职场和发展
鑫鑫向栄20 小时前
[蓝桥杯]堆的计数
数据结构·c++·算法·蓝桥杯·动态规划
緈福的街口20 小时前
【leetcode】3. 无重复字符的最长子串
算法·leetcode·职场和发展
多多*1 天前
基于rpc框架Dubbo实现的微服务转发实战
java·开发语言·前端·redis·职场和发展·蓝桥杯·safari
每次的天空1 天前
Android第十四次面试总结
android·面试·职场和发展