Advent of Code 2022 - Dia 04
No contexto deste outro conteúdo: https://www.tabnews.com.br/tcarreira/advent-of-code-2022-desafios-de-programacao
--- Dia 4: Limpeza do Campo ---
O espaço precisa ser limpo antes que os últimos suprimentos possam ser descarregados dos navios, e por isso vários Elfos foram atribuídos para a tarefa de limpar secções do campo. Cada secção tem um ID único, e cada Elfo é atribuído a um intervalo de IDs de secção.
Contudo, como alguns dos Elfos comparam entre eles as secções que lhes foram atribuídas, eles começaram a notar que muitas das secções se sobrepunham. Para tentar rapidamente encontrar as sobreposições e reduzir o esforço duplicado, os Elfos juntam-se em pares e fazem uma grande lista de atribuições de secções para cada par (o input do puzzle).
Por exemplo, considere a seguinte lista de pares de atribuições de secções:
2-4,6-8
2-3,4-5
5-7,7-9
2-8,3-7
6-6,4-6
2-6,4-8
Para os primeiros pares, isto significa:
-
Dentro do primeiro par de Elfos, o primeiro Elfo foi atribuído às secções
2-4
(secções2
,3
, e4
),enquanto o seguindo Elfo foi atribuído às secções6-8
(secções6
,7
,8
). -
Os Elfos no segundo par foram atribuídos a cada um duas secções.
-
Os Elfos no terceiro par foram atribuídos a três secções cada: um ficou com as secções
5
,6
, e7
, enquanto o outro também ficou com a7
, mais a8
e a9
.
Esta lista de exemplo usa IDs de secções com apenas um dígito para ser mais fácil desenhar; o seu input real poderá conter números maiores. Visualmente, estes pares de atribuições de secções se parecem com o seguinte:
.234..... 2-4
.....678. 6-8
.23...... 2-3
...45.... 4-5
....567.. 5-7
......789 7-9
.2345678. 2-8
..34567.. 3-7
.....6... 6-6
...456... 4-6
.23456... 2-6
...45678. 4-8
Alguns dos pares notaram que uma das suas atribuições contém completamente a outra. Por exemplo, 2-8
contém completamente 3-7
, e 6-6
está completamente contido pelo 4-6
. Em pares onde uma atribuição contém completamente a outra, um Elfo no par iria limpar apenas secções que o seu parceiro já teria limpo, então estes parecem os casos que mais precisam de ser reconsiderados. Neste exemplo, existem 2
pares nessa situação.
Em quantos pares de atribuições um dos intervalos contém completamente o outro?
--- Parte Dois ---
https://github.com/tcarreira/aoc2022/tree/main/day04#----parte-dois----
(saber a parte 2 antes de fazer a parte 1 não é tão divertido. Então vou deixar apenas o link para o Github 😉)
Outros links:
- https://adventofcode.com/2022/day/4
- Código, soluções e traduções: github.com/tcarreira/aoc2022
- Live streaming
- Playlists no youtube
- senha do Private Leaderboard:
827447-e95d42f1