蓝桥杯2020年javaC组真题 “数字三角形”

我们使用广度优先

选择从上到下,或者 从下到上,

1、我们将三角形转换为二维数组,

五排五列的二维数组,

2、我们让他每一次向谁走的和求出来,每次走的只能是相邻的两个。([i][j] [i][j+1])

3、然后我们输出最大的和,就是最顶上的那个 twoArr[0][0]

从下到上:  求最大和

代码实现:

结果:

从上到下: 求最小和

注意:和从下到上是差不多的解法,只不过他求得的是最小和的值。

关于2024第十五届蓝桥杯的具体题目,目前仅提供了部分参赛者的经验分享以及某些别的总结[^1][^2]。然而,针对Java C的全部试题并未在现有资料中明确提及。以下是基于已有信息整理的内容: ### 已知信息分析 #### 输入优化的重要性 一些参赛者提到,在比赛中遇到性能瓶颈时,可能是因为使用了`Scanner`类进行输入操作而导致的时间复杂度过高[^1]。建议采用更高效的输入方式,例如`BufferedReader`配合`StringTokenizer`来替代传统的`Scanner`。 ```java // 高效输入方法示例 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class FastInputExample { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int n = Integer.parseInt(st.nextToken()); System.out.println(n); } } ``` #### 排序规则的应用 对于涉及排序的问题,无论是Java还是C++,都需要自定义比较逻辑。在Java中可以通过实现`Comparator`接口或者匿名内部类的方式完成;而在C++中则可以提供一个静态函数作为参数传递给标准库中的`std::sort()`函数。 ```java // 自定义排序规则示例 (Java) class Node implements Comparable<Node> { int value; @Override public int compareTo(Node other) { return this.value - other.value; // 升序排列 } public String toString() { return "" + value; } } public class SortExample { public static void main(String[] args) { Node nodes[] = {new Node(), new Node()}; nodes[0].value = 5; nodes[1].value = 3; Arrays.sort(nodes); System.out.println(Arrays.toString(nodes)); // 输出 [3, 5] } } ``` 尽管上述内容展示了如何解决特定类型的编程挑战,但它们并不对应于具体的比赛题目本身。 --- 由于缺乏官方发布的完整试卷文档或其他权威渠道披露的信息,无法确切列举出2024第十五届蓝桥杯Java C的所有考题。如果希望获得最准确的第一手资源,推荐访问赛事官方网站查询历史档案或联系主办方索取相关材料。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芒果果。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值