【蓝桥杯】每日一题进击国赛
【摘要】 蓝桥杯---Java大学C组---个人赛日常刷题【day17】
😜今日份搞题 😜
🥇1.求先序排列
🥈2.摆动序列
🥉3.瓷砖铺放
🥇求先序排列
⚽题目描述
解题思路
1️⃣.中序ACGDBHZKX,后序CDGAHXKZB,首先可找到主根B;
2️⃣.那么我们找到中序遍历中的B,由这种遍历的性质,可将中序遍历分为ACGD和HZKX两棵子树
3️⃣.那么对应可找到后序遍历CDGA和HXKZ(从头找即可)
4️⃣.从而问题就变成求
(1).中序遍历ACGD,后序遍历CDGA的树
(2).中序遍历HZKX,后序遍历HXKZ的树
🥈摆动序列
⚽题目描述
⌨输入格式
解题思路
1️⃣.子问题确定:最长上升子序列告诉我们
元素最大值
在子问题的使用表达中不可忽视,本题目就是以满足条件序列最大值
以及序列长度
作为子问题进行解决的;2️⃣.状态:状态数组
dp[i][j]
表示的含义为:i为所满足条件的序列中的最大值
,j为序列长度
(i 可以不包含在序列中,如i为4、j为3时,231、241均满足条件);3️⃣.初始状态:当
序列长度为2
时,即dp[i][2]时,没有所谓的中位数,只有大、小两个数,题目就转换为求排列组合的问题了,即:在i个数中选取2个数进行排列;4️⃣.状态转移方程:
dp[i][j]=dp[i-1][j-1]+dp[i-1][j]
🥉瓷砖铺放
⚽题目描述
⌨输入格式
解题思路
1️⃣.使用递归方法
2️⃣.递归中,第一块瓷砖要么取长度1的,要么取长度2的
3️⃣.第二块瓷砖要么取长度1的,要么取长度2的,以此类推最后再用公式推算即可。
💌最后总结
简单的题都会,难的题下点功夫:“只要功夫深,铁杵磨成绣花针!”
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)