蓝桥杯 每日2道真题训练+DFS预备真题 Python

简介: 蓝桥杯 每日2道真题训练+DFS预备真题 Python

距离蓝桥杯62天 快和小郑一起加油


真题训练1:饮料换购 考察>>简单的数学推理


77d027254e854ac9a9c6428737300306.png


这道题不难 分析易知道:实际得到的饮料数=开始拥有的饮料+兑换的饮料


如果开始拥有的饮料n<=2 不可以兑换


否则当n>=3 可以兑换 消耗3可以换1


只需统计兑换次数即可

adc39f2ae2864fafb1d0db80284341cc.png

n=int(input())
s=n
if n<=2:
    print(n)
else:
    count=0
    while s>=3:
        count+=1
        s=(s-3)+1
print(n+count)

真题训练2: 排序 考察>>对冒泡排序的理解


0d4b2bf5d36349c996b495a79b9ba5c3.png

首先 冒泡排序最多次数为n(n-1)/2次 原因如果是完全逆序 第一个需要交换n-1次,第二个需要交换n-2次以此类推最后一个需要交换1次 等差数列求和公式易得上式 (n为元素个数)


分析题意:需要满足交换100次,无重复,小写字母,最短,字典序最小


无重复和小写字母处理容易 即我们只需要考虑无重复的小写字母字符串


交换100次:n=14 最多交换91次 n=15最多交换105次 n=16最多交换120次


所以如果要交换100次 n至少15 由于n为元素个数 并且要求字符串最短即n最小 所以n=15


字典序最小 那么字符串必然由‘a~o’组成 (由于本题默认了冒泡排序升序,以此为准)


那么令s='onmlkjihgfedcba' 冒泡次数为105次


现在问题在于:如何重新排列s使得次数减少5并使得新排列字典序最小


如何理解字典序最小:字符串从左到右每个字母尽可能小


尝试a放到首字母 这样子总次数减少了14次 不可


尝试b 减少了13次 不可


....尝试j 减少了5次 刚好100次!那么现在就要检验这个‘jonmlkihgfedcba’是不是最小的字典序排列 ,即现在从第二个字符开始有没有更小的可能?答案是没有的,因为onmlkihgfedcba是完全逆序的,交换次数为100次 如果更换了,那么就不会是100了 所以第二个字符也是最小的 同理....所有字符的都是对应位置上的最小字符 所以验证正确


DFS:蓝桥杯配套真题 考察>>DFS


由于小郑上面这道题没有做出来 反思自己 是DFS了解不多 所以明天主要以预习DFS为主


那道真题预计明天出炉python解析


相关文章
Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧
本文介绍了Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧,并通过TensorFlow和PyTorch等库展示了实现神经网络的具体示例,涵盖图像识别、语音识别等多个应用场景。
271 8
蓝桥杯练习题(三):Python组之算法训练提高综合五十题
蓝桥杯Python编程练习题的集合,涵盖了从基础到提高的多个算法题目及其解答。
360 3
蓝桥杯练习题(三):Python组之算法训练提高综合五十题
震惊!Python 图结构竟然可以这样玩?DFS&BFS 遍历技巧大公开
在 Python 编程中,图是一种重要的数据结构,而深度优先搜索(DFS)和广度优先搜索(BFS)是遍历图的两种关键算法。本文将通过定义图的数据结构、实现 DFS 和 BFS 算法,并通过具体示例展示其应用,帮助读者深入理解这两种算法。DFS 适用于寻找路径和检查图连通性,而 BFS 适用于寻找最短路径。掌握这些技巧,可以更高效地解决与图相关的复杂问题。
95 2
|
8月前
|
Python图论探索:从理论到实践,DFS与BFS遍历技巧让你秒变技术大牛
图论在数据结构与算法中占据重要地位,应用广泛。本文通过Python代码实现深度优先搜索(DFS)和广度优先搜索(BFS),帮助读者掌握图的遍历技巧。DFS沿路径深入搜索,BFS逐层向外扩展,两者各具优势。掌握这些技巧,为解决复杂问题打下坚实基础。
117 2
蓝桥杯练习题(四):Python组之历届试题三十题
关于蓝桥杯Python组历届试题的三十个练习题的总结,包括题目描述、输入输出格式、样例输入输出以及部分题目的解题思路和代码实现。
264 0
蓝桥杯练习题(四):Python组之历届试题三十题
蓝桥杯练习题(二):Python组之基础练习三十题
蓝桥杯Python编程练习题的集合,包含了三十个不同难度的编程题目,覆盖了基础语法、数据结构和算法等领域。
187 0
Python 高级编程与实战:深入理解性能优化与调试技巧
本文深入探讨了Python的性能优化与调试技巧,涵盖profiling、caching、Cython等优化工具,以及pdb、logging、assert等调试方法。通过实战项目,如优化斐波那契数列计算和调试Web应用,帮助读者掌握这些技术,提升编程效率。附有进一步学习资源,助力读者深入学习。
用Python编程基础提升工作效率
一、文件处理整明白了,少加两小时班 (敲暖气管子)领导让整理100个Excel表?手都干抽筋儿了?Python就跟铲雪车似的,哗哗给你整利索!
81 11
[oeasy]python081_ai编程最佳实践_ai辅助编程_提出要求_解决问题
本文介绍了如何利用AI辅助编程解决实际问题,以猫屎咖啡的购买为例,逐步实现将购买斤数换算成人民币金额的功能。文章强调了与AI协作时的三个要点:1) 去除无关信息,聚焦目标;2) 将复杂任务拆解为小步骤,逐步完成;3) 巩固已有成果后再推进。最终代码实现了输入验证、单位转换和价格计算,并保留两位小数。总结指出,在AI时代,人类负责明确目标、拆分任务和确认结果,AI则负责生成代码、解释含义和提供优化建议,编程不会被取代,而是会更广泛地融入各领域。
136 28

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问