蓝桥杯2017笔记

素数筛

1.暴力枚举。时间复杂度O(nsqrt(n))
2.埃氏筛。时间复杂度O(n
log(logn))
3.欧拉筛。时间复杂度O(n)

// 欧拉筛
int isnp[N];
int prime[N];//素数表
int c=0;//素数个数
void init(){
	isnp[0] = isnp[1] = 1;
	int i,j;
	for(i=2;i<N;i++){
		if(!isnp[i]) prime[c++]=i;
		for(j=0;j<=c;j++){
			if(i*prime[j]>N) break;
			isnp[i*prime[j]]=1;
			if(i%prime[j]==0) break;
		}
	}
}
### 关于蓝桥杯 Python 的学习笔记与资料 #### 基础知识准备 为了参加蓝桥杯 Python 组的比赛,选手需要具备扎实的基础编程能力以及一定的算法和数据结构知识。通常推荐初学者通过在线教程快速了解 Python 编程的核心语法[^1]。例如,《菜鸟教程》是一个不错的起点,它涵盖了从变量定义到函数调用再到文件操作等多个方面。 #### 题目练习平台 熟悉理论之后,实战演练至关重要。B站上的视频课程《蓝桥杯比赛入门学习+算法辅导》,提供了详细的讲解并辅以实例演示如何解决实际问题。此外,还有专门针对蓝桥杯设计的训练系统题库合集[^2],其中包含了大量经典例题及其解答思路分析,非常适合用来巩固所学内容并通过反复实践提升技能水平。 #### 进阶技巧掌握 当完成初步阶段后,则需进一步深入研究某些特定类型的题目解决方案。这可能涉及到更复杂的逻辑思考过程或者是运用高级的数据处理技术来优化性能表现等方面的工作。上述提到过的个人专栏就很好地满足了这方面的需求——不仅给出了详尽的文字描述说明每一步骤背后的原理依据是什么样的数学模型构建起来的;同时还配有精心挑选出来的代码片段作为示范展示正确实现方式的例子供参考模仿学习之用。 #### 时间规划建议 考虑到每个人的学习进度不同,在制定复习计划时应充分考虑自身实际情况作出合理安排。一般而言,可以从最基础的概念讲起逐步过渡至较难的部分直至完全能够独立应对各类复杂场景下的挑战为止。具体来说就是先花少量时间恶补一下必要的背景材料然后再投入到大量的做题环节当中去不断积累经验教训从而达到熟能生巧的效果最终赢得比赛胜利的机会大大增加[^3]。 #### 技术领域覆盖范围广度考量因素 值得注意的是除了常规意义上的计算机科学范畴内的专业知识之外还需要兼顾其他跨学科交叉融合所产生的新兴热门话题比如机器学习框架TensorFlow/Keras的应用案例探讨亦或是自然语言处理NLP方面的基础知识普及等等这些都可能是未来几年内考察的重点方向之一所以提前做好相应准备工作显得尤为重要[^4]。 ```python def example_function(x): """这是一个简单的例子函数""" result = x * 2 + 5 return result if __name__ == "__main__": test_value = int(input("请输入一个整数: ")) output = example_function(test_value) print(f"计算结果为 {output}") ``` 以上是一段非常基础但也十分重要的Python脚本样例,展示了输入输出、算术运算符使用以及自定义函数创建等内容,这些都是参赛者必须熟练掌握的基本功的一部分。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值