Advent Of Code 2022 第一天 - 计算卡路里
本文是关于 Advent Of Code 2022 的。
编程圣诞日历,圣诞节前每天一个编程问题。
有兴趣的朋友可以在官网答题,用自己喜欢的编程方式去收集星星⭐️。在官网答题需要登陆并下载为你单独生成的谜题输入,每个人的都不一样。
问题
这个问题简单来说就是获取多个组的数字,找到其中最大的一个,part 2 同理找到最大的三个,非常简单的热身题。
第一部分
圣诞老人的驯鹿通常吃普通的驯鹿食物,但他们需要大量的神奇能量来在圣诞节送出礼物。为此,他们最喜欢的零食是一种特殊的⭐️果,只生长在丛林深处。精灵们每年都会带你到生长这种水果的小树林里探险。
为了提供足够的魔法能量,探险队需要在12月25日之前取回至少50颗星星⭐️。虽然精灵们向你保证小树林里有很多水果,但你还是决定抓起沿途看到的任何水果,以备不时之需。
通过解开谜题来收集星星。在降临节日历的每一天,都会有两个谜题;当你完成第一个谜题时,第二个谜题就会被解锁。每个谜题可以获得1颗星⭐️。祝您好运!
丛林一定是杂草丛生,难以用车辆导航或从空中进入;精灵们的探险队传统上是步行。当你的船接近陆地时,精灵们开始清点他们的物资。一个重要的考虑因素是食物–特别是每个精灵携带的热量数量(你的谜题输入)。
精灵们轮流写下他们所带的各种食物、零食、口粮等所含的热量数量,每行一个项目。每个精灵用一条空行将自己的清单与前一个精灵的清单(如果有的话)分开。
例如,假设精灵们写完了自己物品的热量,最后得到的清单如下。
1 | 1000 |
这个列表代表了五个精灵携带的食物的热量。
- 第一个精灵携带的食物有
1000
、2000
和3000
热量,总共有6000
热量。 - 第二个精灵携带的食物有
4000
热量。 - 第三只精灵携带的食物有
5000
和6000
热量,总共11000
热量。 - 第四个精灵携带的食物有
7000
、8000
和9000
热量,共计24000
热量。 - 第五只精灵携带的食物有
10000
热量。
万一精灵们饿了,需要额外的零食,他们需要知道问哪个精灵:他们想知道携带最多热量的精灵所携带的热量是多少。在上面的例子中,这就是*24000
* (由第四只精灵携带)。
找到携带热量最多的精灵。该精灵携带的总热量是多少?
第二部分
当你计算出精灵们问题的答案时,他们已经意识到,携带最多热量食物的精灵最终可能会耗尽零食。
为了避免这种不可接受的情况,精灵们反而想知道携带热量最多的前三名精灵所携带的总热量。这样一来,即使其中一个精灵的零食吃完了,他们仍然有两个备份。
在上面的例子中,前三个精灵是第四个精灵(有24000
热量),然后是第三个精灵(有11000
热量),然后是第五个精灵(有10000
热量)。这三个精灵携带的热量之和为 45000
。
找到携带热量最多的前三个精灵。这些精灵总共携带多少热量?