init
This commit is contained in:
commit
ca9736d8ec
122 files changed
+28514
No files matched your search
@@ -0,0 +1 @@
|
||||
()(((()))(()()()((((()(((())(()(()((((((()(()(((())))((()(((()))((())(()((()()()()(((())(((((((())))()()(()(()(())(((((()()()((())(((((()()))))()(())(((())(())((((((())())))(()())))()))))()())()())((()()((()()()()(()((((((((()()())((()()(((((()(((())((())(()))()((((()((((((((())()((()())(())((()))())((((()())(((((((((((()()(((((()(()))())(((()(()))())((()(()())())())(()(((())(())())()()(()(()((()))((()))))((((()(((()))))((((()(()(()())())()(((()((((())((((()(((()()(())()()()())((()((((((()((()()))()((()))()(()()((())))(((()(((()))((()((()(()))(((()()(()(()()()))))()()(((()(((())())))))((()(((())()(()(())((()())))((((())))(()(()(()())()((()())))(((()((()(())()()((()((())(()()((())(())()))()))((()(())()))())(((((((()(()()(()(())())))))))(()((((((())((((())((())())(()()))))()(())(()())()())((())(()))))(()))(()((()))()(()((((((()()()()((((((((()(()(())((()()(()()))(())()())()((())))()))()())(((()))(())()(())()))()((()((()(()()())(())()()()((())())))((()()(()()((()(())()()())(((()(()()))))(())))(()(()())()))()()))))))()))))((((((())))())))(()(())())(()())))))(()))()))))))()((()))))()))))(()(()((()())())(()()))))(((())()))())())())(((()(()()))(())()(())(())((((((()()))))((()(()))))))(()))())(((()()(()))()())()()()())))))))))))))(())(()))(()))((()(())(()())(())())(()())(())()()(()())))()()()))(())())()))())())(())((())))))))(())))(())))))()))))((())(()(((()))))(()))()((()(())))(()())(((((()))()())()()))))()))))()))())(()(()()()))()))))))((()))))))))))()((()))((()(())((())()()(()()))()(()))))()()(()))()))(((())))(())()((())(())(()())()())())))))))())))()((())))()))(()))()()))(((((((()))())(()()))(()()(()))()(()((()())()))))))(((()()()())))(())()))()())(()()))()()))))))))(())))()))()()))))))()))()())))()(())(())))))()(())()()(()()))))())((()))))()))))(()(((((()))))))))())))())()(())()()))))(())))())()()())()()())()(()))))()))()))))))))())))((()))()))()))())))()())()()())))())))(()((())()((()))())))))())()(())((())))))))))))())()())(())())())(()))(()))()))())(()(())())()())()()(()))))(()(())))))))(())))())(())))))))())()()(())())())))(())))))()))()(()())()(()))())())))))()()(()))()))))())))))))))()))))()))))))())()())()()))))()())))())))))))))))()()))))()()(((()))()()(())()))))((()))))(()))(())())))(())()))))))(()))()))))(())())))))()))(()())))))))))))))())))))))))()((()())(()())))))))((()))))(())(())))()(()())())))())())(()()()())))()))))))())))))())()()())))))))))))()()(()))))()())()))((()())(()))))()(()))))))))))()())())(((())(()))))())()))()))()))))))()))))))(()))))()))))()(())))(())))(()))())()()(()()))()))(()()))))))))()))(()))())(()()(()(()())()()))()))))))))(())))))((()()(()))())())))))()))())(()())()()))())))()(()()()()))((())())))())()(()()))()))))))))(()))(())))()))))(()(()())(()))))()())())()))()()))())))))))))))())()))))))()))))))))())))))()))))())(()())))(())()))())())))))()()(()()())(()())))()()))(((()))(()()()))))()))))()))))((())))()((((((()()))))))())))))))))))(((()))))))))))))(())())))))())(()))))))(()))((()))())))()(()((()))()))()))))))))))())()))()(()()))))())))())(())()(()))()))())(()))()))))(()()))()()(())))))()))(())(()(()()))(()()())))))(((()))))))()))))))))))))(())(()))))()())())()()((()()))())))))(()))))())))))))()()()))))))))())))()(((()()))(())))))(((())())))))((()))()(()))(()))))(()())))(()))())))))()))))(())(())))()((()))(())())))()()))()))))))))()))(()()()(()()()(()))())(())()())(((()))(())))))))))(((()())))()()))))))))()(())(()))()((((())(())(()())))()))(((())()()()))((()))(()))())())))())))(()))())()())())(()(())())()()()(())))())(())))(())))(())()))()))(()((()))))))))())(()))))))())(()()))()()))()(()(()())))()()(()((()((((((()))(())))()()()))())()))((()()(()))())((()(()(()))(()()))))()())))()))()())))))))()()((()())(())))()))(()))(())(()))())(()(())))()()))))))(((()(((()()))()(()(())())((()()))()))()))()))()(()()()(()))((()())()(())))()()))(((())()()())(())()((()()()()(()(())(()()))()(((((()())))((())))))(()()()))))(((()(())))()))((()((()(())()(()((())))((()())()(()))(((()())()()(()))(())(((()((()())()((())()())(((()()))((()((())(()))(()())(()()()))((()))(())(()((()()())((()))(())))(())(())(())))(()())))(((((()(()(((((()())((((()(()())(())(()()(((())((()(((()()(((()()((((((())))())(()((((((()(()))()))()()((()((()))))()(()()(()((()()))))))(((((()(((((())()()()(())())))))))()))((()()(())))(())(()()()())))))(()((((())))))))()()(((()(()(()(()(()())()()()(((((((((()()())()(()))((()()()()()(((((((()())()((())()))((((((()(()(()(()())(((()(((((((()(((())(((((((((())(())())()))((()(()))(((()()())(())(()(()()(((()(())()))())))(())((((((())(()()())()()(((()(((())(()(((())(((((((()(((((((((()))(())(()(()(()))))((()))()(())())())((()(()((()()))((()()((()(())(())(()((())(((())(((()()()((((((()()(())((((())()))))(())((()(()((())))(((((()(()()())())((())())))((())((()((()()((((((())(((()()(()())())(()(()))(()(()))())())()(((((((()(((()(())()()((())((()(()()((()(()()(((((((((((())((())((((((())((()((((()(()((((()(((((((())()((()))))())()((()((((()(()(((()((()())))(())())(((()(((())((((((()(((((((((Line truncated
|
||||
@@ -0,0 +1,11 @@
|
||||
with open('../input.text', 'r') as file:
|
||||
data = file.read()
|
||||
|
||||
floor = 0
|
||||
for char in data:
|
||||
if char == '(':
|
||||
floor += 1
|
||||
elif char == ')':
|
||||
floor -= 1
|
||||
|
||||
print(f'The instructions took Santa to floor {floor}')
|
||||
@@ -0,0 +1,13 @@
|
||||
with open('../input.text', 'r') as file:
|
||||
data: str = file.read()
|
||||
|
||||
floor = 0
|
||||
for i, char in enumerate(data):
|
||||
if char == '(':
|
||||
floor += 1
|
||||
elif char == ')':
|
||||
floor -= 1
|
||||
|
||||
if floor == -1:
|
||||
print(f'The position of the character that causes Santa to first enter the basement is {i + 1}')
|
||||
exit(0)
|
||||
@@ -0,0 +1,1000 @@
|
||||
20x3x11
|
||||
15x27x5
|
||||
6x29x7
|
||||
30x15x9
|
||||
19x29x21
|
||||
10x4x15
|
||||
1x26x4
|
||||
1x5x18
|
||||
10x15x23
|
||||
10x14x20
|
||||
3x5x18
|
||||
29x23x30
|
||||
7x4x10
|
||||
22x24x29
|
||||
30x1x2
|
||||
19x2x5
|
||||
11x9x22
|
||||
23x15x10
|
||||
11x11x10
|
||||
30x28x5
|
||||
22x5x4
|
||||
6x26x20
|
||||
16x12x30
|
||||
10x20x5
|
||||
25x14x24
|
||||
16x17x22
|
||||
11x28x26
|
||||
1x11x10
|
||||
1x24x15
|
||||
13x17x21
|
||||
30x3x13
|
||||
20x25x17
|
||||
22x12x5
|
||||
22x20x24
|
||||
9x2x14
|
||||
6x18x8
|
||||
27x28x24
|
||||
11x17x1
|
||||
1x4x12
|
||||
5x20x13
|
||||
24x23x23
|
||||
22x1x25
|
||||
18x19x5
|
||||
5x23x13
|
||||
8x16x4
|
||||
20x21x9
|
||||
1x7x11
|
||||
8x30x17
|
||||
3x30x9
|
||||
6x16x18
|
||||
22x25x27
|
||||
9x20x26
|
||||
16x21x23
|
||||
5x24x17
|
||||
15x17x15
|
||||
26x15x10
|
||||
22x16x3
|
||||
20x24x24
|
||||
8x18x10
|
||||
23x19x16
|
||||
1x21x24
|
||||
23x23x9
|
||||
14x20x6
|
||||
25x5x5
|
||||
16x3x1
|
||||
29x29x20
|
||||
11x4x26
|
||||
10x23x24
|
||||
29x25x16
|
||||
27x27x22
|
||||
9x7x22
|
||||
6x21x18
|
||||
25x11x19
|
||||
14x13x3
|
||||
15x28x17
|
||||
14x3x12
|
||||
29x8x19
|
||||
30x14x20
|
||||
20x23x4
|
||||
8x16x5
|
||||
4x11x18
|
||||
20x8x24
|
||||
21x13x21
|
||||
14x26x29
|
||||
27x4x17
|
||||
27x4x25
|
||||
5x28x6
|
||||
23x24x11
|
||||
29x22x5
|
||||
30x20x6
|
||||
23x2x10
|
||||
11x4x7
|
||||
27x23x6
|
||||
10x20x19
|
||||
8x20x22
|
||||
5x29x22
|
||||
16x13x2
|
||||
2x11x14
|
||||
6x12x4
|
||||
3x13x6
|
||||
16x5x18
|
||||
25x3x28
|
||||
21x1x5
|
||||
20x16x19
|
||||
28x30x27
|
||||
26x7x18
|
||||
25x27x24
|
||||
11x19x7
|
||||
21x19x17
|
||||
2x12x27
|
||||
20x5x14
|
||||
8x5x8
|
||||
6x24x8
|
||||
7x28x20
|
||||
3x20x28
|
||||
5x20x30
|
||||
13x29x1
|
||||
26x29x5
|
||||
19x28x25
|
||||
5x19x11
|
||||
11x20x22
|
||||
4x23x1
|
||||
19x25x12
|
||||
3x10x6
|
||||
3x14x10
|
||||
28x16x12
|
||||
23x12x2
|
||||
23x12x19
|
||||
20x28x10
|
||||
9x10x25
|
||||
16x21x16
|
||||
1x18x20
|
||||
9x4x26
|
||||
3x25x8
|
||||
17x16x28
|
||||
9x28x16
|
||||
27x3x12
|
||||
17x24x12
|
||||
13x21x10
|
||||
7x17x13
|
||||
6x10x9
|
||||
7x29x25
|
||||
11x19x30
|
||||
1x24x5
|
||||
20x16x23
|
||||
24x28x21
|
||||
6x29x19
|
||||
25x2x19
|
||||
12x5x26
|
||||
25x29x12
|
||||
16x28x22
|
||||
26x26x15
|
||||
9x13x5
|
||||
10x29x7
|
||||
1x24x16
|
||||
22x2x2
|
||||
6x16x13
|
||||
3x12x28
|
||||
4x12x13
|
||||
14x27x21
|
||||
14x23x26
|
||||
7x5x18
|
||||
8x30x27
|
||||
15x9x18
|
||||
26x16x5
|
||||
3x29x17
|
||||
19x7x18
|
||||
16x18x1
|
||||
26x15x30
|
||||
24x30x21
|
||||
13x20x7
|
||||
4x12x10
|
||||
27x20x11
|
||||
28x29x21
|
||||
20x14x30
|
||||
28x12x3
|
||||
19x1x8
|
||||
4x8x6
|
||||
21x14x2
|
||||
27x19x21
|
||||
17x24x14
|
||||
15x18x11
|
||||
18x7x26
|
||||
25x28x29
|
||||
27x26x9
|
||||
18x12x17
|
||||
24x28x25
|
||||
13x24x14
|
||||
26x9x28
|
||||
9x3x30
|
||||
9x2x9
|
||||
8x1x29
|
||||
18x30x10
|
||||
18x14x5
|
||||
26x8x30
|
||||
12x1x1
|
||||
30x5x28
|
||||
26x17x21
|
||||
10x10x10
|
||||
20x7x27
|
||||
13x17x6
|
||||
21x13x17
|
||||
2x16x8
|
||||
7x9x9
|
||||
15x26x4
|
||||
11x28x25
|
||||
10x6x19
|
||||
21x6x29
|
||||
15x5x6
|
||||
28x9x16
|
||||
14x3x10
|
||||
12x29x5
|
||||
22x19x19
|
||||
25x15x22
|
||||
30x6x28
|
||||
11x23x13
|
||||
20x25x14
|
||||
26x1x13
|
||||
6x14x15
|
||||
16x25x17
|
||||
28x4x13
|
||||
10x24x25
|
||||
4x13x10
|
||||
9x15x16
|
||||
15x24x6
|
||||
22x9x19
|
||||
11x11x8
|
||||
4x19x12
|
||||
24x5x4
|
||||
27x12x13
|
||||
7x27x16
|
||||
2x6x9
|
||||
29x27x15
|
||||
18x26x23
|
||||
19x16x15
|
||||
14x5x25
|
||||
9x16x30
|
||||
4x6x4
|
||||
13x10x10
|
||||
1x8x29
|
||||
23x5x17
|
||||
19x20x20
|
||||
11x27x24
|
||||
27x15x5
|
||||
15x11x12
|
||||
21x11x3
|
||||
1x13x22
|
||||
17x8x8
|
||||
13x14x14
|
||||
17x22x7
|
||||
9x5x8
|
||||
2x6x3
|
||||
25x9x15
|
||||
11x8x13
|
||||
9x25x12
|
||||
3x16x12
|
||||
12x16x8
|
||||
16x24x17
|
||||
4x6x26
|
||||
22x29x11
|
||||
14x17x19
|
||||
28x2x27
|
||||
24x22x19
|
||||
22x20x30
|
||||
23x28x4
|
||||
16x12x14
|
||||
22x24x22
|
||||
29x1x28
|
||||
26x29x16
|
||||
3x25x30
|
||||
27x3x13
|
||||
22x24x26
|
||||
25x3x2
|
||||
7x24x2
|
||||
10x5x3
|
||||
28x8x29
|
||||
25x6x4
|
||||
12x17x14
|
||||
24x3x5
|
||||
23x27x7
|
||||
26x23x30
|
||||
11x10x19
|
||||
23x7x11
|
||||
26x14x15
|
||||
14x3x25
|
||||
12x24x14
|
||||
2x14x12
|
||||
9x12x16
|
||||
9x2x28
|
||||
3x8x2
|
||||
22x6x9
|
||||
2x30x2
|
||||
25x1x9
|
||||
20x11x2
|
||||
14x11x12
|
||||
7x14x12
|
||||
24x8x26
|
||||
13x21x23
|
||||
18x17x23
|
||||
13x6x17
|
||||
20x20x19
|
||||
13x17x29
|
||||
7x24x24
|
||||
23x8x6
|
||||
19x10x28
|
||||
3x8x21
|
||||
15x20x18
|
||||
11x27x1
|
||||
11x24x28
|
||||
13x20x11
|
||||
18x19x22
|
||||
27x22x12
|
||||
28x3x2
|
||||
13x4x29
|
||||
26x5x6
|
||||
14x29x25
|
||||
7x4x7
|
||||
5x17x7
|
||||
2x8x1
|
||||
22x30x24
|
||||
22x21x28
|
||||
1x28x13
|
||||
11x20x4
|
||||
25x29x19
|
||||
9x23x4
|
||||
30x6x11
|
||||
25x18x10
|
||||
28x10x24
|
||||
3x5x20
|
||||
19x28x10
|
||||
27x19x2
|
||||
26x20x4
|
||||
19x21x6
|
||||
2x12x30
|
||||
8x26x27
|
||||
11x27x10
|
||||
14x13x17
|
||||
4x3x21
|
||||
2x20x21
|
||||
22x30x3
|
||||
2x23x2
|
||||
3x16x12
|
||||
22x28x22
|
||||
3x23x29
|
||||
8x25x15
|
||||
9x30x4
|
||||
10x11x1
|
||||
24x8x20
|
||||
10x7x27
|
||||
7x22x4
|
||||
27x13x17
|
||||
5x28x5
|
||||
30x15x13
|
||||
10x8x17
|
||||
8x21x5
|
||||
8x17x26
|
||||
25x16x4
|
||||
9x7x25
|
||||
13x11x20
|
||||
6x30x9
|
||||
15x14x12
|
||||
30x1x23
|
||||
5x20x24
|
||||
22x7x6
|
||||
26x11x23
|
||||
29x7x5
|
||||
13x24x28
|
||||
22x20x10
|
||||
18x3x1
|
||||
15x19x23
|
||||
28x28x20
|
||||
7x26x2
|
||||
9x12x20
|
||||
15x4x6
|
||||
1x17x21
|
||||
3x22x17
|
||||
9x4x20
|
||||
25x19x5
|
||||
9x11x22
|
||||
14x1x17
|
||||
14x5x16
|
||||
30x5x18
|
||||
19x6x12
|
||||
28x16x22
|
||||
13x4x25
|
||||
29x23x18
|
||||
1x27x3
|
||||
12x14x4
|
||||
10x25x19
|
||||
15x19x30
|
||||
11x30x4
|
||||
11x22x26
|
||||
13x25x2
|
||||
17x13x27
|
||||
11x30x24
|
||||
15x1x14
|
||||
17x18x4
|
||||
26x11x3
|
||||
16x22x28
|
||||
13x20x9
|
||||
1x18x3
|
||||
25x11x12
|
||||
20x21x1
|
||||
22x27x4
|
||||
8x28x23
|
||||
7x13x27
|
||||
17x9x26
|
||||
27x27x20
|
||||
11x20x12
|
||||
26x21x11
|
||||
29x14x12
|
||||
27x25x1
|
||||
28x29x25
|
||||
21x23x28
|
||||
5x18x18
|
||||
19x5x4
|
||||
7x6x30
|
||||
27x8x11
|
||||
12x24x12
|
||||
16x25x22
|
||||
26x11x29
|
||||
25x22x17
|
||||
15x23x23
|
||||
17x9x6
|
||||
30x10x16
|
||||
21x3x5
|
||||
18x27x2
|
||||
28x21x14
|
||||
16x18x17
|
||||
4x18x2
|
||||
9x1x14
|
||||
9x1x9
|
||||
5x27x12
|
||||
8x16x30
|
||||
3x19x19
|
||||
16x26x24
|
||||
1x6x9
|
||||
15x14x3
|
||||
11x7x19
|
||||
8x19x3
|
||||
17x26x26
|
||||
6x18x11
|
||||
19x12x4
|
||||
29x20x16
|
||||
20x17x23
|
||||
6x6x5
|
||||
20x30x19
|
||||
18x25x18
|
||||
2x26x2
|
||||
3x1x1
|
||||
14x25x18
|
||||
3x1x6
|
||||
11x14x18
|
||||
17x23x27
|
||||
25x29x9
|
||||
6x25x20
|
||||
20x10x9
|
||||
17x5x18
|
||||
29x14x8
|
||||
14x25x26
|
||||
10x15x29
|
||||
23x19x11
|
||||
22x2x2
|
||||
4x5x5
|
||||
13x23x25
|
||||
19x13x19
|
||||
20x18x6
|
||||
30x7x28
|
||||
26x18x17
|
||||
29x18x10
|
||||
30x29x1
|
||||
12x26x24
|
||||
18x17x26
|
||||
29x28x15
|
||||
3x12x20
|
||||
24x10x8
|
||||
30x15x6
|
||||
28x23x15
|
||||
14x28x11
|
||||
10x27x19
|
||||
14x8x21
|
||||
24x1x23
|
||||
1x3x27
|
||||
6x15x6
|
||||
8x25x26
|
||||
13x10x25
|
||||
6x9x8
|
||||
10x29x29
|
||||
26x23x5
|
||||
14x24x1
|
||||
25x6x22
|
||||
17x11x18
|
||||
1x27x26
|
||||
18x25x23
|
||||
20x15x6
|
||||
2x21x28
|
||||
2x10x13
|
||||
12x25x14
|
||||
2x14x23
|
||||
30x5x23
|
||||
29x19x21
|
||||
29x10x25
|
||||
14x22x16
|
||||
17x11x26
|
||||
12x17x30
|
||||
8x17x7
|
||||
20x25x28
|
||||
20x11x30
|
||||
15x1x12
|
||||
13x3x24
|
||||
16x23x23
|
||||
27x3x3
|
||||
26x3x27
|
||||
18x5x12
|
||||
12x26x7
|
||||
19x27x12
|
||||
20x10x28
|
||||
30x12x25
|
||||
3x14x10
|
||||
21x26x1
|
||||
24x26x26
|
||||
7x21x30
|
||||
3x29x12
|
||||
29x28x5
|
||||
5x20x7
|
||||
27x11x2
|
||||
15x20x4
|
||||
16x15x15
|
||||
19x13x7
|
||||
7x17x15
|
||||
27x24x15
|
||||
9x17x28
|
||||
20x21x14
|
||||
14x29x29
|
||||
23x26x13
|
||||
27x23x21
|
||||
18x13x6
|
||||
26x16x21
|
||||
18x26x27
|
||||
9x3x12
|
||||
30x18x24
|
||||
12x11x29
|
||||
5x15x1
|
||||
1x16x3
|
||||
14x28x11
|
||||
2x18x1
|
||||
19x18x19
|
||||
18x28x21
|
||||
2x3x14
|
||||
22x16x5
|
||||
28x18x28
|
||||
24x16x18
|
||||
7x4x10
|
||||
19x26x19
|
||||
24x17x7
|
||||
25x9x6
|
||||
25x17x7
|
||||
20x22x20
|
||||
3x3x7
|
||||
23x19x15
|
||||
21x27x21
|
||||
1x23x11
|
||||
9x19x4
|
||||
22x4x18
|
||||
6x15x5
|
||||
15x25x2
|
||||
23x11x20
|
||||
27x16x6
|
||||
27x8x5
|
||||
10x10x19
|
||||
22x14x1
|
||||
7x1x29
|
||||
8x11x17
|
||||
27x9x27
|
||||
28x9x24
|
||||
17x7x3
|
||||
26x23x8
|
||||
7x6x30
|
||||
25x28x2
|
||||
1x30x25
|
||||
3x18x18
|
||||
28x27x15
|
||||
14x14x1
|
||||
10x25x29
|
||||
18x12x9
|
||||
20x28x16
|
||||
26x27x22
|
||||
8x26x1
|
||||
21x2x12
|
||||
25x16x14
|
||||
21x19x5
|
||||
12x9x22
|
||||
16x5x4
|
||||
5x4x16
|
||||
25x29x3
|
||||
4x29x13
|
||||
15x16x29
|
||||
8x11x24
|
||||
30x11x20
|
||||
17x21x14
|
||||
12x24x10
|
||||
10x12x6
|
||||
3x26x30
|
||||
15x14x25
|
||||
20x12x21
|
||||
13x11x16
|
||||
15x13x3
|
||||
5x17x29
|
||||
6x3x23
|
||||
9x26x11
|
||||
30x1x8
|
||||
14x10x30
|
||||
18x30x10
|
||||
13x19x19
|
||||
16x19x17
|
||||
28x7x10
|
||||
28x29x4
|
||||
3x21x10
|
||||
4x28x24
|
||||
7x28x9
|
||||
2x4x9
|
||||
25x27x13
|
||||
6x12x15
|
||||
4x18x20
|
||||
20x1x16
|
||||
5x13x24
|
||||
11x11x10
|
||||
12x9x23
|
||||
1x9x30
|
||||
17x28x24
|
||||
9x5x27
|
||||
21x15x16
|
||||
17x4x14
|
||||
8x14x4
|
||||
13x10x7
|
||||
17x12x14
|
||||
9x19x19
|
||||
2x7x21
|
||||
8x24x23
|
||||
19x5x12
|
||||
11x23x21
|
||||
13x3x1
|
||||
5x27x15
|
||||
12x25x25
|
||||
13x21x16
|
||||
9x17x11
|
||||
1x15x21
|
||||
4x26x17
|
||||
11x5x15
|
||||
23x10x15
|
||||
12x17x21
|
||||
27x15x1
|
||||
4x29x14
|
||||
5x24x25
|
||||
10x10x12
|
||||
18x12x9
|
||||
11x24x23
|
||||
24x23x3
|
||||
28x12x15
|
||||
29x9x14
|
||||
11x25x8
|
||||
5x12x2
|
||||
26x26x29
|
||||
9x21x2
|
||||
8x8x25
|
||||
1x16x30
|
||||
17x29x20
|
||||
9x22x13
|
||||
7x18x16
|
||||
3x3x23
|
||||
26x25x30
|
||||
15x23x24
|
||||
20x23x5
|
||||
20x16x10
|
||||
23x7x8
|
||||
20x18x26
|
||||
8x27x6
|
||||
30x23x23
|
||||
7x7x24
|
||||
21x11x15
|
||||
1x30x25
|
||||
26x27x22
|
||||
30x28x13
|
||||
20x13x13
|
||||
3x1x15
|
||||
16x7x1
|
||||
7x25x15
|
||||
12x7x18
|
||||
16x9x23
|
||||
16x12x18
|
||||
29x5x2
|
||||
17x7x7
|
||||
21x17x5
|
||||
9x9x17
|
||||
26x16x10
|
||||
29x29x23
|
||||
17x26x10
|
||||
5x19x17
|
||||
1x10x1
|
||||
14x21x20
|
||||
13x6x4
|
||||
13x13x3
|
||||
23x4x18
|
||||
4x16x3
|
||||
16x30x11
|
||||
2x11x2
|
||||
15x30x15
|
||||
20x30x22
|
||||
18x12x16
|
||||
23x5x16
|
||||
6x14x15
|
||||
9x4x11
|
||||
30x23x21
|
||||
20x7x12
|
||||
7x18x6
|
||||
15x6x5
|
||||
18x22x19
|
||||
16x10x22
|
||||
26x20x25
|
||||
9x25x25
|
||||
29x21x10
|
||||
9x21x24
|
||||
7x18x21
|
||||
14x3x15
|
||||
18x19x19
|
||||
4x29x17
|
||||
14x10x9
|
||||
2x26x14
|
||||
13x3x24
|
||||
4x4x17
|
||||
6x27x24
|
||||
2x18x3
|
||||
14x25x2
|
||||
30x14x17
|
||||
11x6x14
|
||||
4x10x18
|
||||
15x4x2
|
||||
27x7x10
|
||||
13x24x1
|
||||
7x12x6
|
||||
25x22x26
|
||||
19x2x18
|
||||
23x29x2
|
||||
2x15x4
|
||||
12x6x9
|
||||
16x14x29
|
||||
9x17x3
|
||||
21x9x12
|
||||
23x18x22
|
||||
10x8x4
|
||||
29x2x7
|
||||
19x27x15
|
||||
4x24x27
|
||||
25x20x14
|
||||
8x23x19
|
||||
1x24x19
|
||||
6x20x10
|
||||
15x8x5
|
||||
18x28x5
|
||||
17x23x22
|
||||
9x16x13
|
||||
30x24x4
|
||||
26x3x13
|
||||
12x22x18
|
||||
29x17x29
|
||||
26x4x16
|
||||
15x7x20
|
||||
9x15x30
|
||||
12x7x18
|
||||
28x19x18
|
||||
11x23x23
|
||||
24x20x1
|
||||
20x3x24
|
||||
1x26x1
|
||||
14x10x6
|
||||
5x27x24
|
||||
13x21x12
|
||||
20x20x5
|
||||
6x28x9
|
||||
11x26x11
|
||||
26x29x12
|
||||
21x4x11
|
||||
20x11x17
|
||||
22x27x20
|
||||
19x11x21
|
||||
2x11x11
|
||||
13x5x7
|
||||
12x10x25
|
||||
21x28x1
|
||||
15x30x17
|
||||
28x19x1
|
||||
4x19x12
|
||||
11x4x12
|
||||
4x10x30
|
||||
11x18x5
|
||||
22x20x12
|
||||
3x7x27
|
||||
20x26x4
|
||||
13x27x26
|
||||
23x14x13
|
||||
4x19x7
|
||||
26x27x16
|
||||
20x5x20
|
||||
18x5x8
|
||||
19x21x1
|
||||
22x8x1
|
||||
29x4x1
|
||||
24x10x15
|
||||
24x9x20
|
||||
10x3x8
|
||||
29x30x3
|
||||
2x8x24
|
||||
16x7x18
|
||||
2x11x23
|
||||
23x15x16
|
||||
21x12x6
|
||||
24x28x9
|
||||
6x1x13
|
||||
14x29x20
|
||||
27x24x13
|
||||
16x26x8
|
||||
5x6x17
|
||||
21x8x1
|
||||
28x19x21
|
||||
1x14x16
|
||||
18x2x9
|
||||
29x28x10
|
||||
22x26x27
|
||||
18x26x23
|
||||
22x24x2
|
||||
28x26x1
|
||||
27x29x12
|
||||
30x13x11
|
||||
1x25x5
|
||||
13x30x18
|
||||
3x13x22
|
||||
22x10x11
|
||||
2x7x7
|
||||
18x17x8
|
||||
9x22x26
|
||||
30x18x16
|
||||
10x2x3
|
||||
7x27x13
|
||||
3x20x16
|
||||
9x21x16
|
||||
1x18x15
|
||||
21x30x30
|
||||
4x25x23
|
||||
3x11x7
|
||||
5x6x12
|
||||
27x1x20
|
||||
13x15x24
|
||||
23x29x2
|
||||
13x5x24
|
||||
22x16x15
|
||||
28x14x3
|
||||
29x24x9
|
||||
2x20x4
|
||||
30x10x4
|
||||
23x7x20
|
||||
22x12x21
|
||||
3x19x11
|
||||
4x28x28
|
||||
5x4x7
|
||||
28x12x25
|
||||
2x16x26
|
||||
23x20x7
|
||||
5x21x29
|
||||
9x21x16
|
||||
9x6x10
|
||||
9x6x4
|
||||
24x14x29
|
||||
28x11x6
|
||||
10x22x1
|
||||
21x30x20
|
||||
13x17x8
|
||||
2x25x24
|
||||
19x21x3
|
||||
28x8x14
|
||||
6x29x28
|
||||
27x10x28
|
||||
30x11x12
|
||||
17x2x10
|
||||
14x19x17
|
||||
2x11x4
|
||||
26x1x2
|
||||
13x4x4
|
||||
23x20x18
|
||||
2x17x21
|
||||
28x7x15
|
||||
3x3x27
|
||||
24x17x30
|
||||
28x28x20
|
||||
21x5x29
|
||||
13x12x19
|
||||
24x29x29
|
||||
19x10x6
|
||||
19x12x14
|
||||
21x4x17
|
||||
27x16x1
|
||||
4x17x30
|
||||
23x23x18
|
||||
23x15x27
|
||||
26x2x11
|
||||
12x8x8
|
||||
15x23x26
|
||||
30x17x15
|
||||
17x17x15
|
||||
24x4x30
|
||||
9x9x10
|
||||
14x25x20
|
||||
25x11x19
|
||||
20x7x1
|
||||
9x21x3
|
||||
7x19x9
|
||||
10x6x19
|
||||
26x12x30
|
||||
21x9x20
|
||||
15x11x6
|
||||
30x21x9
|
||||
10x18x17
|
||||
22x9x8
|
||||
8x30x26
|
||||
28x12x27
|
||||
17x17x7
|
||||
11x13x8
|
||||
5x3x21
|
||||
24x1x29
|
||||
1x28x2
|
||||
18x28x10
|
||||
8x29x14
|
||||
26x26x27
|
||||
17x10x25
|
||||
22x30x3
|
||||
27x9x13
|
||||
21x21x4
|
||||
30x29x16
|
||||
22x7x20
|
||||
24x10x2
|
||||
16x29x17
|
||||
28x15x17
|
||||
19x19x22
|
||||
9x8x6
|
||||
26x23x24
|
||||
25x4x27
|
||||
16x12x2
|
||||
11x6x18
|
||||
19x14x8
|
||||
9x29x13
|
||||
23x30x19
|
||||
10x16x1
|
||||
4x21x28
|
||||
23x25x25
|
||||
19x9x16
|
||||
30x11x12
|
||||
24x3x9
|
||||
28x19x4
|
||||
18x12x9
|
||||
7x1x25
|
||||
28x7x1
|
||||
24x3x12
|
||||
30x24x22
|
||||
27x24x26
|
||||
9x30x30
|
||||
29x10x8
|
||||
4x6x18
|
||||
10x1x15
|
||||
10x4x26
|
||||
23x20x16
|
||||
6x3x14
|
||||
30x8x16
|
||||
25x14x20
|
||||
11x9x3
|
||||
15x23x25
|
||||
8x30x22
|
||||
22x19x18
|
||||
25x1x12
|
||||
27x25x7
|
||||
25x23x3
|
||||
13x20x8
|
||||
5x30x7
|
||||
18x19x27
|
||||
20x23x3
|
||||
1x17x21
|
||||
21x21x27
|
||||
13x1x24
|
||||
7x30x20
|
||||
21x9x18
|
||||
23x26x6
|
||||
22x9x29
|
||||
17x6x21
|
||||
28x28x29
|
||||
19x25x26
|
||||
9x27x21
|
||||
5x26x8
|
||||
11x19x1
|
||||
10x1x18
|
||||
29x4x8
|
||||
21x2x22
|
||||
14x12x8
|
||||
@@ -0,0 +1,19 @@
|
||||
with open('input.text', 'r') as file:
|
||||
data: list[str] = file.readlines()
|
||||
|
||||
total = 0
|
||||
for line in data:
|
||||
l, w, h = [int(s) for s in line.split('x')]
|
||||
|
||||
sides = [2*l*w, 2*w*h, 2*h*l]
|
||||
|
||||
area = 0
|
||||
lowest = float('inf')
|
||||
for side in sides:
|
||||
if side/2 < lowest:
|
||||
lowest = side/2
|
||||
area += side
|
||||
|
||||
total += area + lowest
|
||||
|
||||
print(f'The total square feet of wrapping paper needed is {int(total)} sq. ft.')
|
||||
@@ -0,0 +1,14 @@
|
||||
with open('input.text', 'r') as file:
|
||||
data: list[str] = file.readlines()
|
||||
|
||||
total = 0
|
||||
for line in data:
|
||||
sides = [int(s) for s in line.split('x')]
|
||||
sides.sort()
|
||||
l, w, h = sides
|
||||
|
||||
ribbon = (l * 2 + w * 2) + (l*w*h)
|
||||
|
||||
total += ribbon
|
||||
|
||||
print(f'Total Ribbon: {total}')
|
||||
@@ -0,0 +1 @@
|
||||
v>v<vvv<<vv^v<v>vv>v<<<^^^^^<<^<vv>^>v^>^>^>^>^><vvvv<^>^<<^><<<^vvvv>^>^><^v^><^<>^^>^vvv^<vv>>^>^^<>><>^>vvv>>^vv>^<><>^<v^>^>^><vv^vv^>><<^><<v>><>^<^>>vvv>v>>>v<<^<><^<v<>v>^^v^^^<^v^^>>><^>^>v<>^<>>^>^^v^><v<v>>><>v<v^v>^v<>>^><v>^<>v^>^<>^v^^^v^^>>vv<<^^><^<vvv>^>^^<^>>^^^^^v^<v>vv<>>v^v<^v^^<><^<^vv^><>><><>v>vvv^vv^^<<><<vvv><<^v^><v<>vvv^<^>vvvv^>^>>^v^<v^vv<^^v<>v>vv^<>><v<<<^v^<<><v<^<^<><^^^>^>>v>^>v^<>v><^<^<v^>^^vv<^^<>v^v^vv<>>>>v^v<>><^^v>vv^^>v^v>v<vv>>v>><v^v^v>vv>^^>^v><<vv^v^^vv<^v><^<<v<v^>vv^^^<v^>v>v^^^>><^^<v^<^>>v><vv<v^^>^^v>>v^^^<^^v>^v>><^<^<>>v<<^^vv>^^^v<^<^<v<v^^vv>^vv^>>v^><v>><<<>^vv^<^<>v^^<<<v<^>^><><v^^>>^^^<^vv<^^^>><^^v>^^v^<v^v^>^^<v>^<^v<^<<<<^<v^>v^<^^<>^^>^><<>>^v><>><^<v><^^^>>vv>^><vv>^^^^^v^vvv><><^<^>v>v^v^>^><><^<^><>v<<vv<^>><>^v^^v>^<<<>^v^>^<<v^vv<>v^<v^^vv><<v^<>>>^<v>vv>v>>>^<^>><vv<>>>>v<v>>>^v>v><>>vvv<^^><<^>^>v<^vvvv<v><vv<><^^^v^^^>v^v<>v<^^v>>><>v<v^>>v><v^>>^^<v<<<^<v<><^^v><<v^><<<<^vv<^<>^><vv<<<<^>>>^v>^v>vv>^v<>v>v<v><^>>v>>^>^><^<v^v^>^v<><><^^>^<vvvv^^<>^^^>vv^v^v>^v^^v^^v><v^<^<>><^<v>v>>vv<<v>>vvvv<vv><>>^v^>^>>v^v^<<<vv<><v<<>>>^v<<v>^^vv^><>v>^>v><<<<<<<^>^^v^<<^^>>vvv^<><>><>^^v<<vv><^^v<^^><vv>v^>>>v^v><v^v<^>v^><>v<<>v>^^v><<<<><^v^v>>^<>^<<>^<v<<>>v<<>><^<<<<^v>^<^v>v>vv<v<v<<>^>v<^<<>v^<vvvv^>v>><<v><v<>v>v>>v^vvv^^>>>v^<^<<^^<<<><v>v^<<v<<<>v<^^<><v<v^^<v>^>v>>v<>^>^^>>^v<<>v^^^>>>^vv<^v<v>^>v>^><>v^^<>^^v^^vv^<^>^<<>><<^>^v>>><<<vvvv><<><v<^v^v<vvv^<><<^<vv><v^v^v^>v>v^<vvv^><^><^<vv><>>v^>^^^<>><v^<^^^<>v<<v<^v>>>^>>v^><<>vvv><^>>v><v><>v>>^>v><<><<>^<>^^^vv><v^>v^^>>^>^<^v<v<^^<^vvvv>v<v>^>v^>^><^<vvvv><^><><<v<>v<v^><^<v^>^v^^<<<<^><^^<^><>>^v<<^<<^vv>v>>v<^<^vv>><v<vv>v<v<v>^v<>^>v<>^v<<<v>>^^v>>><vvv>v^>^v^v>^^^v<vvvv>><^>vvv^<vv^^vv><<<>v<>v>^<vvv^<^<v<v<^vv^^>>vv^<^^v^><^^^^^v<^<v<^>>>vv^v^>^<v>^<><v^<^v>>><^v^<<v<<v<>v>^v<v^v>>^^v<<v<v<<>>>vv>>^v>>^<<<<^><<<><^^>>v<>^vvvv>v^^^>^^^>^<vvvv><^^v<v<>v<^v^v<<v^^^v^<v<^v>v^^<>^>^<^v>vv<v^vv<^<<>v><<^><><^^v<<><^^><>^v>^<><<^<^^<<>vv<>^^<<^>><<<>>vvv>^>v^^v^><<^>v>^>^<^<<>v<^>vv^v^v<>vv<<v>vv<vv><^>v^<>^vv^v^<v<^>>>>v^v><^<><<>vv^<vvv^>>vvv^>v>>><^^vv<vvvv>v<^<^>>^^>^^vv>>><^v<>^v^<<>v^^^<v>^>>^<^<v>>^v<^^^<v>^v>^>>v<vv>>^<v^<<>>^>>><v>v^<<^<v>>^<<^^<>v<^v<^<>v^v>^^v<vvvv>^vv>vvv>v^<^>><v^^vv<<<^>vvvv<>>^^<>v^<><>v<^<>v<>^>v<>vv<v^v>>v<v<^<v^^v^vv^vvv><^^>v>><>>^<^^<>>^>^<v^>>vvv^v><v>>^>^>v><><<><vv^v>v<>^v<^vv^^^<>^^<<^^^v<>><v<^<^<^<^^><v^v<^>v^>vvvv>^^v^>^<v<^^^>>^<<vv^<><><^^^^<<>^<><v>vv^<><^>^^<>v^<>>>v><>vvvvv>v>v^^>^<<vvvv<>vv>>v<<^<>^^^v^<><>>^<<<v<v<>>>><><v>v<v<>>^>^^^^vv^^<<><^^<<vv<^<>v>vv<v<><<<^<<v<<<<>v<>>^<^>^>><v>v>><^^<>><<<><<><v^^v<<><^<^v<v^><^^v<<>><<<<^>v^<v>><v^><v<vvv>v^v^<v><<>>v<><<v>^<>><>>^><>v^v>v<<>v<>v^^><<>>>v<<>>>>^>v>><v<<>>>vv>v>^<^^^<>v<v>^<^^v^vvv^>vv>^<v><vvvv>^<<>vvv<<<vv>^^<^>^>>v>v<<<<<>^^vv^>>v>^<^<v^v^>^v>>v>^v<><>^<^>v>v<<<^^^v>^<<<>vvv^v^^>^>>^>v>v<>^^><>>v>^>v<<<^^^v^<v^vv>><><^<^<><vvv<v^>>^v>vv<^v<<^vv>v^<<v>v>v>^v^>^v<<^v^vv>v<v>^<<><v^>>v<>><v<<<^v<<>vvv^<vv<vvv<<>^vv^^v><^>v^vv<<v^<<^^^<^<>^^<<>v<><<v>^><>^<><<v<v^^>vv<>^<v<^<vvv>vv>v><^^v<>><^v^v><><>><v<v>vv<>>><v^^v<>><<^>>><^^^vvv<<<vv<<^v<<<>><<vv>>>>v<<<<<vv><><v>v^^<<^vv^<vv<>>vv>^<>^v^^<>^^^vv>v^^<v<><v>v<v>>^v<v<>>^<v^^><>v^^^>v^^v<vv><^>v^v^<>v>v<v<^^>>v<^^vv^v<^^^^vv<<><<^>>^^<<v^^<<^>v^>>^^^><^^>^v^v>^<<v<vv<<<v<^^^>^>>^v<>^<^>v>^>^v^<^^^<^vv<v><^^>>v<v>^>^v^>>>>^v>^^<<^<v^v<^<<v<<^><^^<v^<><v>v^<<v^^<><<>>><vv<<><>^<>>>v<<v^^^v^^<<<vv<<^<^<^vv^<><><<^^<^^>v^>^<v<>>v^v<><<v>^^v>^<^<vvv<v>v^v>>>^^<^<v^>^vv<<<v<<>^><><^<>v>>>v<v^<>v>><^^^v^^^v<^^<vv^^^>v>v<>>^^<><>v>^<v<>^>>>><>v>^v>^vv^v<vv<<^^>><v<>^>^^<v<^>^<vvv>><>^<<>>><<<><>^^<<<v<>v^>v>v<v>^^^>^>^v<<>v>vv>><<<v>^^<v><vv<<v^^>^>>^><^>v<^<^v>><^^>v<vv^^><><>^><<><>v^>v<><^^>><>^<^^v<^<<v>><v><<<^^<<v<^vv^v<>><>>>^>v<vvv^>^<><v^><^<<^vv<^v^v^v<>v^^v>v^<^>^vv^>>><<>v^vv^<>^v^><<v^v<v>v^<><>>v^v^><>v^vvv^^^<<^<<v<<v<^vv^>>v^v>^^<v<>><>v>>v^<>^>v>^>><<>v^v><^v>v>>><v<v><^<^^>vv<v><^>^<^>^^v><><v<^^v<<><^<<v^<v<<><^^vvv^v>^>^<>>vv>v^^v^^vv<^^>><v^^vv><^v>v^<<v<^v>vvv<>>^v><<>^v<<<>^><^vv><<^^<v^>v<<v>^vv<>^v>>>><<<<^^<^v>^<^^<^<^^>>^^v>^^^^v^^^<<>^^vv<<v^^><v>><^<<><>^>v<>>v^^^>^v^^v^<v^v>v>>>>>^v>^>^^<vvv^^<v^<<<v<<>v>><^^^v<<^^<v>>^<^<^><^<<v^v><<vv<^<>>v>v>^v<><<v>^>vv^v<v>v><^<v>><>^<vv<v^^^^v<^^>><<^^>v>v>^^^<>v>^v^^>vv^vv<^^>><>^>^<>v>><>^v<<v>v>^><^^^v^<vv><<^v^>v^>vv>v^<>v><vv><^v>v<><v^v^v<^v<>^v<v^<<><<v>>^v><v>^^<>vvv^>^<<v^>><^>><^<>^v<v<v<^vvv<><<^v^<v>><<<v>^<^<v>v>^vv^v>v<^^vv<<vvv^<v>><>vv^>v<<>v<vvvv>>v>^^>>><<<^>^vv>><v>^^^>v<^vv<>v<<<v<<<<v>>>>^<^^^^>v<^^<><v>v>v<v^>vv^>v>v<^>^v^<>v>>vvv>^^><^vvv>><>>>^<<^<v<>>>v^^><v<v>>^><>v<^^v^<<v><>^<>>><^v^v>>>^vvvv^<><<<v<^>>v>^v^<v<v<<^<<v^vv^v>v<v<>>v<v^<<<><v^>><^<<^>^^><v>v<^v^<^>v>^<<v>v^<>v^<>vv^<>^>^>v^>^vv<>^^<<>>v<>^v<><v^><><<<vv>v>v^>vv^><<<<v>^v<><>^^<vv>v^^v^^^<v<^^><v^v<>><v<vv>^<>>><vv<^v<<>>^><>>v<v^v^>>>v<<>v<<<<<<<^v<<^^^v<^v<>v^^<<<^<>>v^vv<v>^<^^<^^<<^>vv><^<^^v<<<^><^v<^><>v<vv^>^v^^>>><<vv^^v><^<<^<>>^>>^<<<<v^vv<>>>v>^v>><>v>>v>><>v>><^Line truncated
|
||||
@@ -0,0 +1,20 @@
|
||||
with open('input.text', 'r') as file:
|
||||
data: str = file.read()
|
||||
|
||||
been = []
|
||||
pos = [0, 0]
|
||||
for char in data:
|
||||
match char:
|
||||
case '^':
|
||||
pos[1] += 1
|
||||
case 'v':
|
||||
pos[1] -= 1
|
||||
case '>':
|
||||
pos[0] += 1
|
||||
case '<':
|
||||
pos[0] -= 1
|
||||
|
||||
if not pos in been:
|
||||
been.append(pos.copy())
|
||||
|
||||
print(f'Santa has been to {len(been)} houses.')
|
||||
@@ -0,0 +1,25 @@
|
||||
with open('input.text', 'r') as file:
|
||||
data: str = file.read()
|
||||
|
||||
been = []
|
||||
santas = [[0, 0], [0, 0]]
|
||||
robo_santa = False
|
||||
|
||||
for char in data:
|
||||
|
||||
match char:
|
||||
case '^':
|
||||
santas[robo_santa][1] += 1
|
||||
case 'v':
|
||||
santas[robo_santa][1] -= 1
|
||||
case '>':
|
||||
santas[robo_santa][0] += 1
|
||||
case '<':
|
||||
santas[robo_santa][0] -= 1
|
||||
|
||||
if not santas[robo_santa] in been:
|
||||
been.append(santas[robo_santa].copy())
|
||||
|
||||
robo_santa = not robo_santa
|
||||
|
||||
print(f'Santa has been to {len(been)} houses.')
|
||||
Reference in new issue
Block a user