day 1-5
This commit is contained in:
commit
82f8e11ae4
42 changed files with 5836 additions and 0 deletions
14
day_1/code.py
Normal file
14
day_1/code.py
Normal file
|
@ -0,0 +1,14 @@
|
|||
import fileinput
|
||||
|
||||
previous = None
|
||||
count = 0
|
||||
for i,line in enumerate(fileinput.input()):
|
||||
try:
|
||||
val = int(line.strip())
|
||||
except ValueError:
|
||||
continue
|
||||
if previous != None and val > previous:
|
||||
count += 1
|
||||
previous = val
|
||||
|
||||
print(count)
|
18
day_1/code2.py
Normal file
18
day_1/code2.py
Normal file
|
@ -0,0 +1,18 @@
|
|||
import fileinput
|
||||
|
||||
data = []
|
||||
for inp in fileinput.input():
|
||||
val = inp.strip()
|
||||
if val != '':
|
||||
int_value = int(val)
|
||||
data.append(int_value)
|
||||
prec = None
|
||||
count = 0
|
||||
for i in range(len(data) - 2):
|
||||
s = data[i]+data[i+1]+data[i+2]
|
||||
if prec != None and s > prec:
|
||||
count += 1
|
||||
prec = s
|
||||
|
||||
print(count)
|
||||
|
11
day_1/input1.txt
Normal file
11
day_1/input1.txt
Normal file
|
@ -0,0 +1,11 @@
|
|||
199
|
||||
200
|
||||
208
|
||||
210
|
||||
200
|
||||
207
|
||||
240
|
||||
269
|
||||
260
|
||||
263
|
||||
|
2000
day_1/input2.txt
Normal file
2000
day_1/input2.txt
Normal file
File diff suppressed because it is too large
Load diff
23
day_2/code.py
Normal file
23
day_2/code.py
Normal file
|
@ -0,0 +1,23 @@
|
|||
import fileinput
|
||||
|
||||
data = []
|
||||
for inp in fileinput.input():
|
||||
val = inp.strip()
|
||||
if val != '':
|
||||
cmd, v = val.split()
|
||||
data.append((cmd, int(v)))
|
||||
|
||||
horizontal = 0
|
||||
aim = 0
|
||||
depth = 0
|
||||
for cmd, val in data:
|
||||
if cmd == 'forward':
|
||||
horizontal+=val
|
||||
depth+=aim*val
|
||||
if cmd == 'down':
|
||||
aim+=val
|
||||
if cmd == 'up':
|
||||
aim-=val
|
||||
print(horizontal, depth)
|
||||
|
||||
print(horizontal* depth)
|
6
day_2/input1.txt
Normal file
6
day_2/input1.txt
Normal file
|
@ -0,0 +1,6 @@
|
|||
forward 5
|
||||
down 5
|
||||
forward 8
|
||||
up 3
|
||||
down 8
|
||||
forward 2
|
1001
day_2/input2.txt
Normal file
1001
day_2/input2.txt
Normal file
File diff suppressed because it is too large
Load diff
89
day_3/code.py
Normal file
89
day_3/code.py
Normal file
|
@ -0,0 +1,89 @@
|
|||
import fileinput
|
||||
|
||||
data = []
|
||||
for inp in fileinput.input():
|
||||
val = inp.strip()
|
||||
if val != '':
|
||||
data.append(val)
|
||||
|
||||
commons = []
|
||||
epsilon = []
|
||||
gamma = []
|
||||
charLen = len(data[0])
|
||||
lineLen = len(data)
|
||||
for i in range(charLen):
|
||||
count = 0
|
||||
for j in range(lineLen):
|
||||
if data[j][i] == '1':
|
||||
count += 1
|
||||
|
||||
status = 'lt'
|
||||
#print(count, lineLen-count)
|
||||
if count == (lineLen-count): status = 'eq'
|
||||
if count > (lineLen-count): status = 'gt'
|
||||
|
||||
if status == 'gt':
|
||||
most,least = '1', '0'
|
||||
else:
|
||||
most,least = '0', '1'
|
||||
|
||||
gamma.append(most)
|
||||
epsilon.append(least)
|
||||
commons.append((status, most, least))
|
||||
|
||||
g = int(''.join(gamma), 2)
|
||||
e = int(''.join(epsilon), 2)
|
||||
|
||||
|
||||
def get_distribution(nbs):
|
||||
out = []
|
||||
for _i in range(len(nbs[0])):
|
||||
count = 0
|
||||
for _j in range(len(nbs)):
|
||||
if nbs[_j][_i] == '1': count += 1
|
||||
status = 'lt'
|
||||
if count == (len(nbs)-count): status = 'eq'
|
||||
if count > (len(nbs)-count): status = 'gt'
|
||||
most,least = ('1', '0') if status == 'gt' else ('0', '1')
|
||||
out.append((status, most, least))
|
||||
|
||||
return out
|
||||
|
||||
def filter_item(mode, status, most, least, x, i, full):
|
||||
print(f'{mode=}, {status=}, {most=}, {least=}, {x=}, {i=}, {full=}')
|
||||
if mode:
|
||||
if status == 'eq':
|
||||
return x == '1' # oxygen
|
||||
if x == most: return True
|
||||
|
||||
if not mode: # co2
|
||||
if status == 'eq':
|
||||
return x == '0'
|
||||
if x == least: return True
|
||||
|
||||
return False
|
||||
|
||||
def rating(inp, mode = True):
|
||||
nb = inp.copy()
|
||||
i = 0
|
||||
while len(nb) > 1:
|
||||
distri = get_distribution(nb)
|
||||
print(f'= {len(nb)} -> {nb} {distri=}')
|
||||
status, most, least = distri[i]
|
||||
nb = list(filter(lambda x: filter_item(mode, status, most, least, x[i], i, x), nb))
|
||||
i += 1
|
||||
print(f'after filter: {nb}')
|
||||
return int(nb[0], 2)
|
||||
|
||||
print(g, e)
|
||||
print(g*e)
|
||||
|
||||
print(commons)
|
||||
o = rating(data, True)
|
||||
c = rating(data, False)
|
||||
print('==')
|
||||
print(o) # oxygen
|
||||
print(c) # CO2
|
||||
print(o*c)
|
||||
|
||||
|
12
day_3/input1.txt
Normal file
12
day_3/input1.txt
Normal file
|
@ -0,0 +1,12 @@
|
|||
00100
|
||||
11110
|
||||
10110
|
||||
10111
|
||||
10101
|
||||
01111
|
||||
00111
|
||||
11100
|
||||
10000
|
||||
11001
|
||||
00010
|
||||
01010
|
1000
day_3/input2.txt
Normal file
1000
day_3/input2.txt
Normal file
File diff suppressed because it is too large
Load diff
BIN
day_3/main
Normal file
BIN
day_3/main
Normal file
Binary file not shown.
66
day_3/main.c
Normal file
66
day_3/main.c
Normal file
|
@ -0,0 +1,66 @@
|
|||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int tobin(char *inp)
|
||||
{
|
||||
int len = strlen(inp);
|
||||
printf("%d", len);
|
||||
int out = 0;
|
||||
int i = 0;
|
||||
while (inp[i] != '\0') {
|
||||
if (inp[i] == '1') {
|
||||
out = out | (1 << len-i-1);
|
||||
}
|
||||
i++;
|
||||
}
|
||||
return out;
|
||||
}
|
||||
|
||||
int main(int argc, char** argv) {
|
||||
char input;
|
||||
char lines[1024][32];
|
||||
int lineCount = 0;
|
||||
int charCount = 0;
|
||||
while (scanf("%c", &input) == 1) {
|
||||
if (input == '\n') {
|
||||
charCount = 0;
|
||||
lineCount++;
|
||||
} else {
|
||||
lines[lineCount][charCount] = input;
|
||||
charCount++;
|
||||
}
|
||||
}
|
||||
|
||||
charCount = strlen(lines[0]);
|
||||
|
||||
char gamma[32];
|
||||
char epsilon[32];
|
||||
printf("Recorded %d %d \n", lineCount, charCount);
|
||||
for (int i = 0; i < charCount; i++) {
|
||||
int oneCount = 0;
|
||||
for (int j = 0; j < lineCount; j++) {
|
||||
printf("%c", lines[j][i]);
|
||||
if (lines[j][i] == '1')
|
||||
oneCount++;
|
||||
}
|
||||
printf("\n count: %d \n", oneCount);
|
||||
if (oneCount > (lineCount-oneCount)) {
|
||||
epsilon[i] = '0';
|
||||
gamma[i] = '1';
|
||||
} else {
|
||||
epsilon[i] = '1';
|
||||
gamma[i] = '0';
|
||||
}
|
||||
printf("\n");
|
||||
}
|
||||
gamma[i+1] = '\0';
|
||||
epsilon[i+1] = '\0';
|
||||
printf("gamma: %s epsilon: %s \n", gamma, epsilon);
|
||||
|
||||
int e = tobin(epsilon);
|
||||
int g = tobin(gamma);
|
||||
|
||||
printf("%d, %d \n", g, e);
|
||||
printf("ans: %d \n", e*g);
|
||||
}
|
||||
|
8
day_3/tobin.py
Normal file
8
day_3/tobin.py
Normal file
|
@ -0,0 +1,8 @@
|
|||
|
||||
inp = '01011'
|
||||
out = 0
|
||||
for i in range(0, len(inp)):
|
||||
print(i, len(inp)-i-1)
|
||||
if inp[i] == '1':
|
||||
out = out | (1 << (len(inp)-i-1))
|
||||
print(out)
|
87
day_4/code.py
Normal file
87
day_4/code.py
Normal file
|
@ -0,0 +1,87 @@
|
|||
import fileinput
|
||||
import pprint
|
||||
|
||||
data = []
|
||||
for inp in fileinput.input():
|
||||
val = inp.strip()
|
||||
if val == '':
|
||||
data.append(None)
|
||||
if val != '':
|
||||
data.append(val)
|
||||
|
||||
# parse called numbers
|
||||
to_be_called = list(map(int, data[0].strip().split(',')))
|
||||
|
||||
# parse boards
|
||||
boards = []
|
||||
currentBoard = []
|
||||
for line in data[2:]:
|
||||
if line == None:
|
||||
boards.append(currentBoard)
|
||||
currentBoard = []
|
||||
continue
|
||||
line_tmp = filter(lambda x: x != '', line.split(' '))
|
||||
line_tmp = map(int, line_tmp)
|
||||
currentBoard.append(list(line_tmp))
|
||||
|
||||
def is_row_valid(row, called):
|
||||
to_cmp = list(map(lambda x: x in called, row))
|
||||
return to_cmp == len(row)*[True]
|
||||
|
||||
def board_do_win(deb, board, calling):
|
||||
for row in board:
|
||||
if is_row_valid(row, calling):
|
||||
return True
|
||||
|
||||
# generate columns
|
||||
columns = []
|
||||
for column_index in range(len(board[0])):
|
||||
current_c = []
|
||||
for row_index in range(len(board)):
|
||||
current_c.append(board[row_index][column_index])
|
||||
columns.append(current_c)
|
||||
# if deb:
|
||||
# print(f'{columns=}')
|
||||
|
||||
for column in columns:
|
||||
if is_row_valid(column, calling):
|
||||
return True
|
||||
return False
|
||||
|
||||
def get_wins():
|
||||
wins = []
|
||||
index_to_wins = []
|
||||
for i in range(len(to_be_called)):
|
||||
calling = to_be_called[0:(i+1)]
|
||||
for board_index,board in enumerate(boards):
|
||||
if board_index in index_to_wins:
|
||||
continue
|
||||
deb = False
|
||||
if calling == [7, 4, 9, 5, 11, 17, 23, 2, 0, 14, 21, 24, 10, 16, 13]:
|
||||
print('DEBUG==')
|
||||
deb = True
|
||||
res = board_do_win(deb, board, calling)
|
||||
if deb:
|
||||
print(res, board)
|
||||
if res:
|
||||
wins.append((board_index, calling.copy(), board))
|
||||
index_to_wins.append(board_index)
|
||||
return wins, index_to_wins
|
||||
|
||||
def get_score_from_board(board, calling):
|
||||
sum_unmarked = 0
|
||||
for row in board:
|
||||
for e in row:
|
||||
if e not in calling:
|
||||
sum_unmarked += e
|
||||
return sum_unmarked * calling[-1]
|
||||
|
||||
score = 0
|
||||
wins, index_to_wins = get_wins()
|
||||
pprint.pprint(wins)
|
||||
print(f'{index_to_wins=}')
|
||||
i, calling, winner = wins[-1]
|
||||
score = get_score_from_board(winner, calling)
|
||||
|
||||
pprint.pprint(winner)
|
||||
print(f'{score=}')
|
20
day_4/input1.txt
Normal file
20
day_4/input1.txt
Normal file
|
@ -0,0 +1,20 @@
|
|||
7,4,9,5,11,17,23,2,0,14,21,24,10,16,13,6,15,25,12,22,18,20,8,19,3,26,1
|
||||
|
||||
22 13 17 11 0
|
||||
8 2 23 4 24
|
||||
21 9 14 16 7
|
||||
6 10 3 18 5
|
||||
1 12 20 15 19
|
||||
|
||||
3 15 0 2 22
|
||||
9 18 13 17 5
|
||||
19 8 7 25 23
|
||||
20 11 10 24 4
|
||||
14 21 16 12 6
|
||||
|
||||
14 21 17 24 4
|
||||
10 16 15 9 19
|
||||
18 8 23 26 20
|
||||
22 11 13 6 5
|
||||
2 0 12 3 7
|
||||
|
601
day_4/input2.txt
Normal file
601
day_4/input2.txt
Normal file
|
@ -0,0 +1,601 @@
|
|||
42,32,13,22,91,2,88,85,53,87,37,33,76,98,89,19,69,9,62,21,38,49,54,81,0,26,79,36,57,18,4,40,31,80,24,64,77,97,70,6,73,23,20,47,45,51,74,25,95,96,58,92,94,11,39,63,65,99,48,83,29,34,44,75,55,17,14,56,8,82,59,52,46,90,5,41,60,67,16,1,15,61,71,66,72,30,28,3,43,27,78,10,86,7,50,35,84,12,93,68
|
||||
|
||||
90 8 2 34 41
|
||||
11 67 74 71 62
|
||||
47 42 44 1 17
|
||||
21 55 12 91 6
|
||||
60 69 75 92 56
|
||||
|
||||
49 29 60 45 31
|
||||
94 51 73 33 67
|
||||
21 92 53 95 96
|
||||
2 55 52 8 87
|
||||
4 36 76 83 42
|
||||
|
||||
23 66 50 84 58
|
||||
62 98 81 76 57
|
||||
24 2 56 79 6
|
||||
55 0 16 64 38
|
||||
12 67 5 97 60
|
||||
|
||||
46 64 5 39 62
|
||||
16 82 13 77 52
|
||||
18 26 44 0 61
|
||||
25 7 43 42 50
|
||||
11 85 30 28 76
|
||||
|
||||
51 28 70 65 78
|
||||
62 88 30 36 96
|
||||
80 87 4 1 24
|
||||
63 22 41 79 34
|
||||
18 15 47 26 67
|
||||
|
||||
48 68 92 67 36
|
||||
54 50 71 98 21
|
||||
20 91 70 78 76
|
||||
87 97 44 3 93
|
||||
84 12 39 96 57
|
||||
|
||||
86 12 38 44 1
|
||||
10 87 74 53 66
|
||||
14 99 85 48 88
|
||||
59 33 76 71 31
|
||||
83 39 2 67 35
|
||||
|
||||
62 67 27 96 8
|
||||
81 23 78 33 48
|
||||
80 16 0 86 85
|
||||
26 54 29 32 89
|
||||
88 77 43 18 46
|
||||
|
||||
87 88 13 49 80
|
||||
78 19 81 56 11
|
||||
18 55 70 44 48
|
||||
31 37 24 95 28
|
||||
20 79 89 94 14
|
||||
|
||||
10 31 52 49 79
|
||||
8 72 61 27 42
|
||||
73 4 11 43 91
|
||||
37 44 58 19 97
|
||||
96 63 90 13 74
|
||||
|
||||
71 27 87 40 99
|
||||
69 29 79 64 67
|
||||
85 66 4 28 30
|
||||
23 51 16 49 45
|
||||
92 12 74 1 75
|
||||
|
||||
46 52 40 12 44
|
||||
0 73 20 86 1
|
||||
85 32 4 42 2
|
||||
21 33 56 39 9
|
||||
49 69 76 98 22
|
||||
|
||||
42 81 5 11 2
|
||||
57 50 77 8 24
|
||||
85 92 15 39 52
|
||||
37 70 36 79 67
|
||||
34 20 16 93 22
|
||||
|
||||
49 68 25 4 46
|
||||
17 57 77 59 54
|
||||
65 83 18 84 63
|
||||
36 74 61 22 71
|
||||
14 0 26 3 98
|
||||
|
||||
1 80 93 66 58
|
||||
38 9 18 60 2
|
||||
70 46 35 88 11
|
||||
95 89 85 29 26
|
||||
82 68 25 15 53
|
||||
|
||||
97 80 28 17 7
|
||||
67 46 54 95 98
|
||||
38 74 42 57 79
|
||||
63 29 36 78 6
|
||||
90 60 84 10 14
|
||||
|
||||
18 88 8 96 0
|
||||
66 56 43 47 11
|
||||
69 73 14 71 25
|
||||
27 63 31 44 94
|
||||
75 95 84 74 13
|
||||
|
||||
92 9 98 17 74
|
||||
46 7 2 51 52
|
||||
21 60 5 87 15
|
||||
86 91 65 69 54
|
||||
61 85 1 62 53
|
||||
|
||||
89 80 4 0 68
|
||||
17 87 52 86 48
|
||||
3 34 16 25 35
|
||||
13 38 49 66 50
|
||||
36 43 65 84 56
|
||||
|
||||
9 93 54 92 55
|
||||
32 2 39 96 98
|
||||
58 72 52 83 97
|
||||
12 44 27 24 20
|
||||
0 3 28 56 69
|
||||
|
||||
66 56 37 36 72
|
||||
35 49 40 43 44
|
||||
54 21 59 12 65
|
||||
74 25 22 80 98
|
||||
27 81 69 97 62
|
||||
|
||||
72 81 27 61 74
|
||||
26 50 79 13 53
|
||||
49 78 76 70 43
|
||||
51 64 99 46 67
|
||||
68 59 71 17 41
|
||||
|
||||
97 22 73 30 98
|
||||
8 54 68 47 23
|
||||
70 89 41 52 61
|
||||
81 28 58 90 3
|
||||
88 40 86 46 43
|
||||
|
||||
94 6 46 43 59
|
||||
41 28 87 31 45
|
||||
83 26 66 81 1
|
||||
76 86 15 42 8
|
||||
67 47 54 4 77
|
||||
|
||||
96 56 22 67 2
|
||||
95 47 90 54 51
|
||||
78 79 29 82 48
|
||||
61 81 77 6 24
|
||||
71 93 98 26 75
|
||||
|
||||
95 7 77 94 64
|
||||
19 79 14 24 5
|
||||
50 48 4 71 22
|
||||
35 69 89 54 2
|
||||
6 51 8 82 58
|
||||
|
||||
87 6 85 53 64
|
||||
50 43 80 61 15
|
||||
69 41 51 76 0
|
||||
78 26 37 62 16
|
||||
12 33 75 58 52
|
||||
|
||||
67 18 68 52 42
|
||||
37 30 49 31 69
|
||||
93 90 76 9 32
|
||||
60 84 73 94 17
|
||||
21 27 66 43 44
|
||||
|
||||
89 69 24 14 1
|
||||
88 33 50 2 63
|
||||
12 34 6 97 53
|
||||
28 26 55 8 32
|
||||
49 19 17 64 86
|
||||
|
||||
31 37 81 65 38
|
||||
96 18 45 19 58
|
||||
35 43 1 49 41
|
||||
46 85 92 53 15
|
||||
3 34 8 14 21
|
||||
|
||||
35 68 61 45 39
|
||||
46 99 52 55 15
|
||||
74 14 10 62 17
|
||||
8 66 98 89 91
|
||||
58 24 44 27 29
|
||||
|
||||
28 48 52 18 13
|
||||
17 35 20 11 49
|
||||
93 50 31 95 83
|
||||
27 33 79 44 80
|
||||
4 96 23 65 68
|
||||
|
||||
70 78 31 86 36
|
||||
99 38 62 95 27
|
||||
52 74 25 80 41
|
||||
30 15 47 19 21
|
||||
77 23 53 9 7
|
||||
|
||||
0 83 11 25 42
|
||||
50 64 76 67 72
|
||||
75 30 82 15 84
|
||||
58 17 87 61 33
|
||||
98 74 44 3 93
|
||||
|
||||
5 40 78 24 11
|
||||
57 17 67 60 25
|
||||
37 76 28 56 35
|
||||
66 94 2 90 47
|
||||
86 10 85 46 45
|
||||
|
||||
63 12 7 74 14
|
||||
21 31 84 51 36
|
||||
66 20 25 46 41
|
||||
15 3 18 62 45
|
||||
35 78 93 2 9
|
||||
|
||||
90 9 33 63 41
|
||||
25 73 35 97 19
|
||||
99 96 45 71 22
|
||||
84 43 29 14 88
|
||||
42 8 1 78 68
|
||||
|
||||
98 84 38 95 27
|
||||
18 32 54 12 96
|
||||
56 50 2 45 53
|
||||
14 83 59 72 70
|
||||
22 41 28 9 78
|
||||
|
||||
89 94 50 33 73
|
||||
31 47 8 35 34
|
||||
43 92 95 21 51
|
||||
68 13 53 24 38
|
||||
80 69 44 87 83
|
||||
|
||||
32 82 75 73 91
|
||||
99 10 22 58 23
|
||||
86 9 42 81 40
|
||||
71 25 3 78 54
|
||||
80 15 83 5 4
|
||||
|
||||
58 1 3 11 24
|
||||
66 51 84 44 25
|
||||
37 54 12 27 97
|
||||
38 2 39 85 83
|
||||
89 91 33 79 59
|
||||
|
||||
49 22 12 84 60
|
||||
34 29 11 92 19
|
||||
97 41 88 53 38
|
||||
26 37 8 36 67
|
||||
91 3 90 52 46
|
||||
|
||||
77 35 76 56 20
|
||||
39 94 37 3 83
|
||||
78 81 66 29 4
|
||||
82 41 38 0 73
|
||||
59 16 88 15 30
|
||||
|
||||
34 69 74 90 33
|
||||
9 47 71 94 10
|
||||
76 50 15 19 32
|
||||
49 89 31 21 92
|
||||
80 12 13 97 93
|
||||
|
||||
45 94 35 59 20
|
||||
18 46 14 36 30
|
||||
6 78 84 38 99
|
||||
5 4 90 92 63
|
||||
34 24 26 75 3
|
||||
|
||||
80 39 1 93 55
|
||||
67 71 30 44 76
|
||||
38 13 73 21 8
|
||||
11 47 46 69 29
|
||||
15 57 95 52 34
|
||||
|
||||
45 86 88 80 19
|
||||
3 5 55 36 90
|
||||
54 85 44 18 39
|
||||
57 92 42 25 77
|
||||
43 0 12 1 24
|
||||
|
||||
74 71 83 29 25
|
||||
56 12 52 33 64
|
||||
68 94 97 14 15
|
||||
7 48 24 80 5
|
||||
54 87 35 1 66
|
||||
|
||||
55 50 73 72 36
|
||||
17 80 87 68 90
|
||||
8 33 81 1 51
|
||||
67 61 71 54 95
|
||||
93 98 27 56 0
|
||||
|
||||
19 32 63 6 98
|
||||
13 38 23 28 8
|
||||
5 31 66 72 39
|
||||
99 46 2 64 14
|
||||
91 83 35 85 10
|
||||
|
||||
67 85 49 68 37
|
||||
8 36 31 81 18
|
||||
74 61 20 80 50
|
||||
34 23 42 52 39
|
||||
21 14 22 58 54
|
||||
|
||||
16 14 69 13 81
|
||||
21 96 62 7 5
|
||||
95 52 0 67 24
|
||||
6 30 65 66 86
|
||||
28 25 85 56 15
|
||||
|
||||
4 41 21 86 32
|
||||
95 23 63 28 2
|
||||
9 16 37 84 14
|
||||
92 22 71 42 5
|
||||
46 65 69 81 57
|
||||
|
||||
45 20 46 44 22
|
||||
62 93 78 58 25
|
||||
91 38 29 68 24
|
||||
21 55 71 43 26
|
||||
64 76 84 80 99
|
||||
|
||||
92 67 43 5 12
|
||||
2 64 46 15 96
|
||||
95 75 73 38 30
|
||||
10 65 20 39 26
|
||||
36 16 25 27 88
|
||||
|
||||
9 62 18 58 34
|
||||
85 80 36 2 48
|
||||
16 60 75 72 51
|
||||
39 22 32 61 54
|
||||
40 44 23 87 53
|
||||
|
||||
93 69 56 4 22
|
||||
73 51 24 53 19
|
||||
83 98 77 94 59
|
||||
52 70 15 40 48
|
||||
60 89 67 92 85
|
||||
|
||||
48 72 42 80 22
|
||||
99 49 11 77 4
|
||||
28 24 1 63 51
|
||||
85 93 62 7 78
|
||||
35 32 3 21 86
|
||||
|
||||
36 75 67 79 34
|
||||
20 8 71 6 5
|
||||
50 61 14 52 81
|
||||
26 37 0 80 77
|
||||
93 47 86 54 94
|
||||
|
||||
50 19 68 54 80
|
||||
81 12 33 87 24
|
||||
28 40 37 30 31
|
||||
41 51 15 27 97
|
||||
67 70 14 77 86
|
||||
|
||||
89 57 48 37 27
|
||||
44 46 29 63 20
|
||||
74 88 25 68 76
|
||||
18 28 91 59 58
|
||||
99 77 62 64 83
|
||||
|
||||
22 5 86 37 42
|
||||
47 69 87 34 89
|
||||
64 33 18 56 51
|
||||
30 49 11 79 17
|
||||
61 80 0 29 57
|
||||
|
||||
7 82 87 15 83
|
||||
76 43 92 1 97
|
||||
0 46 2 86 6
|
||||
48 27 29 61 67
|
||||
53 10 64 93 77
|
||||
|
||||
65 16 23 26 87
|
||||
58 5 25 97 94
|
||||
43 7 39 69 35
|
||||
62 81 56 13 28
|
||||
76 12 37 14 93
|
||||
|
||||
90 81 15 55 23
|
||||
58 40 8 56 76
|
||||
83 7 78 89 47
|
||||
65 70 13 48 42
|
||||
16 69 66 52 46
|
||||
|
||||
30 38 20 32 94
|
||||
91 96 34 23 90
|
||||
16 24 49 50 86
|
||||
65 19 56 7 66
|
||||
80 60 74 71 11
|
||||
|
||||
60 77 54 25 22
|
||||
9 61 68 6 89
|
||||
15 71 10 84 41
|
||||
1 47 8 43 63
|
||||
69 57 85 24 81
|
||||
|
||||
54 83 73 52 49
|
||||
69 96 31 57 44
|
||||
19 66 24 6 55
|
||||
91 84 20 3 27
|
||||
7 9 71 43 75
|
||||
|
||||
90 72 15 99 2
|
||||
73 56 48 28 62
|
||||
40 75 0 59 31
|
||||
43 67 44 24 77
|
||||
98 35 4 3 37
|
||||
|
||||
2 85 72 39 49
|
||||
58 25 91 69 19
|
||||
34 8 57 42 55
|
||||
80 21 51 64 30
|
||||
28 32 82 84 6
|
||||
|
||||
33 77 39 13 12
|
||||
86 21 96 82 94
|
||||
78 92 42 45 70
|
||||
31 22 60 80 67
|
||||
79 27 93 55 65
|
||||
|
||||
49 90 73 72 10
|
||||
98 89 77 88 12
|
||||
83 3 31 47 21
|
||||
65 26 93 55 53
|
||||
5 95 22 8 63
|
||||
|
||||
79 88 11 62 25
|
||||
85 14 77 4 19
|
||||
41 31 83 26 67
|
||||
46 98 74 99 2
|
||||
44 53 70 36 52
|
||||
|
||||
21 33 15 57 53
|
||||
56 91 25 69 10
|
||||
52 59 73 96 87
|
||||
65 71 14 37 2
|
||||
39 89 29 83 64
|
||||
|
||||
88 38 45 39 20
|
||||
99 72 61 96 4
|
||||
23 24 67 49 80
|
||||
77 6 65 76 18
|
||||
59 51 78 33 46
|
||||
|
||||
44 22 9 90 83
|
||||
93 50 2 54 26
|
||||
68 71 43 85 41
|
||||
38 20 6 64 24
|
||||
81 39 33 56 27
|
||||
|
||||
98 1 69 30 38
|
||||
67 52 79 31 0
|
||||
24 41 82 55 73
|
||||
33 66 64 20 7
|
||||
65 9 14 70 94
|
||||
|
||||
59 63 65 25 1
|
||||
36 85 61 82 50
|
||||
52 3 70 30 43
|
||||
79 57 31 71 76
|
||||
19 97 93 77 49
|
||||
|
||||
60 45 90 32 74
|
||||
77 64 58 44 43
|
||||
71 49 37 21 46
|
||||
50 67 1 24 15
|
||||
14 22 0 40 23
|
||||
|
||||
65 87 81 64 28
|
||||
53 80 23 76 77
|
||||
49 14 50 2 35
|
||||
85 26 88 94 30
|
||||
79 18 68 15 45
|
||||
|
||||
6 48 38 63 92
|
||||
51 45 58 4 76
|
||||
78 40 22 17 55
|
||||
79 12 66 61 5
|
||||
68 74 0 93 89
|
||||
|
||||
66 4 65 71 77
|
||||
47 35 38 83 64
|
||||
53 16 9 56 25
|
||||
92 81 55 60 33
|
||||
80 24 73 0 26
|
||||
|
||||
26 29 55 76 38
|
||||
79 52 91 84 39
|
||||
50 57 37 34 71
|
||||
33 31 68 92 24
|
||||
81 95 5 70 8
|
||||
|
||||
83 64 11 67 42
|
||||
97 29 27 4 78
|
||||
23 10 48 71 81
|
||||
80 74 86 17 36
|
||||
61 14 85 21 96
|
||||
|
||||
18 8 7 88 25
|
||||
59 5 28 57 69
|
||||
64 54 16 70 72
|
||||
13 75 71 33 2
|
||||
60 55 46 51 32
|
||||
|
||||
23 89 63 96 88
|
||||
71 66 9 53 65
|
||||
56 46 29 95 80
|
||||
44 94 90 3 5
|
||||
11 99 59 60 78
|
||||
|
||||
42 33 81 25 0
|
||||
46 66 63 82 94
|
||||
52 73 92 30 24
|
||||
59 26 50 87 45
|
||||
79 55 74 17 64
|
||||
|
||||
95 43 13 98 18
|
||||
62 12 24 88 28
|
||||
23 11 93 51 67
|
||||
71 0 44 64 96
|
||||
66 17 84 90 19
|
||||
|
||||
38 6 12 75 27
|
||||
28 73 62 50 51
|
||||
63 86 29 98 15
|
||||
46 90 4 58 96
|
||||
20 78 64 56 82
|
||||
|
||||
19 91 23 40 1
|
||||
78 57 75 43 2
|
||||
35 60 85 74 30
|
||||
80 3 63 54 32
|
||||
82 99 89 25 88
|
||||
|
||||
88 13 92 11 72
|
||||
56 6 35 55 21
|
||||
8 20 36 60 99
|
||||
1 96 57 45 12
|
||||
41 73 50 83 69
|
||||
|
||||
42 69 53 76 11
|
||||
38 74 13 14 86
|
||||
18 49 51 67 61
|
||||
26 80 47 16 78
|
||||
66 46 12 68 79
|
||||
|
||||
22 90 72 93 24
|
||||
55 29 43 28 5
|
||||
99 47 87 40 51
|
||||
81 18 70 20 36
|
||||
0 48 23 46 82
|
||||
|
||||
91 74 83 95 54
|
||||
60 56 38 37 89
|
||||
87 96 71 50 35
|
||||
5 11 42 72 3
|
||||
77 81 36 49 97
|
||||
|
||||
71 72 17 34 93
|
||||
45 81 22 67 23
|
||||
61 20 94 14 1
|
||||
85 40 15 36 88
|
||||
54 91 62 73 9
|
||||
|
||||
66 36 39 58 60
|
||||
96 8 22 49 77
|
||||
76 64 47 78 30
|
||||
50 41 12 69 15
|
||||
7 1 29 72 27
|
||||
|
||||
90 12 65 13 39
|
||||
75 70 47 36 79
|
||||
31 54 17 10 32
|
||||
76 92 55 83 40
|
||||
49 5 20 44 37
|
||||
|
||||
16 78 65 5 70
|
||||
63 72 89 93 66
|
||||
21 90 46 54 81
|
||||
7 48 88 60 11
|
||||
95 0 38 3 26
|
||||
|
||||
19 65 66 41 27
|
||||
7 18 91 52 48
|
||||
87 55 49 68 71
|
||||
85 12 4 40 1
|
||||
57 67 6 11 58
|
||||
|
||||
91 85 38 14 21
|
||||
63 93 37 76 25
|
||||
68 36 4 24 71
|
||||
43 31 60 19 95
|
||||
52 55 13 83 78
|
5
day_5/CHANGELOG.md
Normal file
5
day_5/CHANGELOG.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Revision history for aocDay5
|
||||
|
||||
## 0.1.0.0 -- YYYY-mm-dd
|
||||
|
||||
* First version. Released on an unsuspecting world.
|
32
day_5/aocDay5.cabal
Normal file
32
day_5/aocDay5.cabal
Normal file
|
@ -0,0 +1,32 @@
|
|||
cabal-version: 2.4
|
||||
name: aocDay5
|
||||
version: 0.1.0.0
|
||||
|
||||
-- A short (one-line) description of the package.
|
||||
-- synopsis:
|
||||
|
||||
-- A longer description of the package.
|
||||
-- description:
|
||||
|
||||
-- A URL where users can report bugs.
|
||||
-- bug-reports:
|
||||
license: NONE
|
||||
author: Matthieu Bessat
|
||||
maintainer: spamfree@matthieubessat.fr
|
||||
|
||||
-- A copyright notice.
|
||||
-- copyright:
|
||||
-- category:
|
||||
extra-source-files: CHANGELOG.md
|
||||
|
||||
executable aocDay5
|
||||
main-is: Main.hs
|
||||
|
||||
-- Modules included in this executable, other than Main.
|
||||
-- other-modules:
|
||||
|
||||
-- LANGUAGE extensions used by modules in this package.
|
||||
-- other-extensions:
|
||||
build-depends: base ^>=4.15.0.0
|
||||
hs-source-dirs: app
|
||||
default-language: Haskell2010
|
4
day_5/app/Main.hs
Normal file
4
day_5/app/Main.hs
Normal file
|
@ -0,0 +1,4 @@
|
|||
module Main where
|
||||
|
||||
main :: IO ()
|
||||
main = putStrLn "Hello, Haskell!"
|
BIN
day_5/code
Normal file
BIN
day_5/code
Normal file
Binary file not shown.
BIN
day_5/code.hi
Normal file
BIN
day_5/code.hi
Normal file
Binary file not shown.
75
day_5/code.hs
Normal file
75
day_5/code.hs
Normal file
|
@ -0,0 +1,75 @@
|
|||
import Text.Printf
|
||||
import System.IO
|
||||
|
||||
-- getChunk :: Int -> String -> String
|
||||
-- getChunk 0 subject = ("", subject)
|
||||
-- getChunk len "" = ""
|
||||
-- getChunk len subject =
|
||||
-- let (hd, tl) = (getChunk (len-1) (tail subject))
|
||||
-- (hd, (head subject) : tl)
|
||||
|
||||
chunksOfString :: Int -> String -> [String]
|
||||
|
||||
chunksOfString 0 subject = [subject]
|
||||
chunksOfString len "" = []
|
||||
chunksOfString len subject = do
|
||||
(take len subject):(chunksOfString len (drop len subject))
|
||||
|
||||
|
||||
|
||||
|
||||
splitStrOnce :: String -> String -> (String, String)
|
||||
splitStrOnce separator "" = ("", "")
|
||||
splitStrOnce "" subject = (subject, "")
|
||||
splitStrOnce separator subject = do
|
||||
let sepLen = length separator
|
||||
if (take sepLen subject) == separator then
|
||||
("", (drop sepLen subject))
|
||||
else do
|
||||
let res = splitStrOnce separator (tail subject)
|
||||
(((head subject):(fst res)), (snd res))
|
||||
|
||||
splitStr :: String -> String -> [String]
|
||||
splitStr separator "" = []
|
||||
splitStr separator subject = do
|
||||
let res = splitStrOnce separator subject
|
||||
(fst res):(splitStr separator (snd res))
|
||||
|
||||
intOfString :: String -> Int
|
||||
intOfString x = read x :: Int
|
||||
|
||||
-- addPointToDiagram :: (Int, Int) -> [[Int]]
|
||||
|
||||
-- rows -> columns -> diagram
|
||||
makeDiagram :: Int -> Int -> [[Int]]
|
||||
makeDiagram rows columns = replicate rows (replicate columns 0)
|
||||
|
||||
addLinesToDiagram diagram (line:remaining) =
|
||||
addLinesToDiagram (addToDiagram line) remaining
|
||||
where addToDiagram ((xA, yA), (xB, yB)) =
|
||||
undefined
|
||||
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
-- parse input of the day 5 of advent of code 2021
|
||||
input <- getContents
|
||||
let parsed = map (\(a:[b]) -> (a,b)) $ map (\x -> do {
|
||||
map (\(x:[y]) -> ((intOfString x), (intOfString y)))
|
||||
$ map (splitStr ",")
|
||||
$ splitStr " -> " x
|
||||
}) $ lines $ input
|
||||
|
||||
let allPoints = concat $ map (\(a,b) -> [a,b]) $ parsed
|
||||
let allXs = map (\(x,y) -> x) $ allPoints
|
||||
let allYs = map (\(x,y) -> y) $ allPoints
|
||||
let maxX = maximum allXs
|
||||
let maxY = maximum allYs
|
||||
|
||||
let diagram = makeDiagram (maxY+1) (maxY+1)
|
||||
|
||||
putStrLn (printf "diagram size: rows: %d; columns: %d" (maxY+1) (maxX+1))
|
||||
|
||||
diagram = map addLineToDiagram (parsed
|
||||
|
||||
putStrLn $ show $ allXs
|
BIN
day_5/code.o
Normal file
BIN
day_5/code.o
Normal file
Binary file not shown.
81
day_5/code.py
Normal file
81
day_5/code.py
Normal file
|
@ -0,0 +1,81 @@
|
|||
import fileinput
|
||||
import pprint
|
||||
|
||||
def print_diagram(d):
|
||||
for r in d:
|
||||
for e in r:
|
||||
print('.' if e == 0 else e, end='')
|
||||
print('')
|
||||
|
||||
def parse_lines():
|
||||
lines, points = [], []
|
||||
for inp in fileinput.input():
|
||||
val = inp.strip()
|
||||
if val == '': continue
|
||||
if val != '':
|
||||
# quick and dirty way to parse each line (unreadable!)
|
||||
a, b = list(
|
||||
map(lambda pt: tuple(list(
|
||||
map(int, pt.split(','))
|
||||
)), val.split(' -> '))
|
||||
)
|
||||
points.append(a)
|
||||
points.append(b)
|
||||
lines.append((a, b))
|
||||
return lines, points
|
||||
|
||||
def draw_line(diagram, a, b, mode):
|
||||
step = 0
|
||||
if mode == 'horizontal':
|
||||
for i in range(a[0], b[0]+1):
|
||||
diagram[a[1]][i] += 1
|
||||
step += 1
|
||||
if mode == 'vertical':
|
||||
for i in range(a[1], b[1]+1):
|
||||
diagram[i][a[0]] += 1
|
||||
step += 1
|
||||
if mode == 'diagonal':
|
||||
inc = 1 if b[1] > a[1] else -1
|
||||
for i in range(a[0], b[0]+1):
|
||||
x, y = i, a[1]+inc*step
|
||||
diagram[y][x] += 1
|
||||
step += 1
|
||||
return step
|
||||
|
||||
def count_overlap(diagram):
|
||||
c = 0
|
||||
for r in diagram:
|
||||
for e in r:
|
||||
if e >= 2: c += 1
|
||||
return c
|
||||
|
||||
def main():
|
||||
lines, points = parse_lines()
|
||||
|
||||
#print(points)
|
||||
|
||||
xs = [x for x,y in points]
|
||||
ys = [y for x,y in points]
|
||||
|
||||
rows = max(ys)+1
|
||||
columns = max(xs)+1
|
||||
|
||||
# create the diagram
|
||||
diagram = [[0 for j in range(columns)] for i in range(rows)]
|
||||
|
||||
# draw lines in diagram
|
||||
for a,b in lines:
|
||||
mode = 'diagonal'
|
||||
if a[1] == b[1]:
|
||||
mode = 'horizontal'
|
||||
if a[0] == b[0]:
|
||||
mode = 'vertical'
|
||||
if draw_line(diagram, a, b, mode) == 0:
|
||||
draw_line(diagram, b, a, mode)
|
||||
|
||||
#print_diagram(diagram)
|
||||
|
||||
overlap = count_overlap(diagram)
|
||||
print(overlap)
|
||||
|
||||
main()
|
|
@ -0,0 +1,51 @@
|
|||
{-# LANGUAGE CPP #-}
|
||||
{-# LANGUAGE NoRebindableSyntax #-}
|
||||
{-# OPTIONS_GHC -fno-warn-missing-import-lists #-}
|
||||
{-# OPTIONS_GHC -Wno-missing-safe-haskell-mode #-}
|
||||
module Paths_aocDay5 (
|
||||
version,
|
||||
getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
|
||||
getDataFileName, getSysconfDir
|
||||
) where
|
||||
|
||||
import qualified Control.Exception as Exception
|
||||
import Data.Version (Version(..))
|
||||
import System.Environment (getEnv)
|
||||
import Prelude
|
||||
|
||||
#if defined(VERSION_base)
|
||||
|
||||
#if MIN_VERSION_base(4,0,0)
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
|
||||
#endif
|
||||
|
||||
#else
|
||||
catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
|
||||
#endif
|
||||
catchIO = Exception.catch
|
||||
|
||||
version :: Version
|
||||
version = Version [0,1,0,0] []
|
||||
bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
|
||||
|
||||
bindir = "/home/mbess/.cabal/bin"
|
||||
libdir = "/home/mbess/.cabal/lib/x86_64-linux-ghc-9.0.1/aocDay5-0.1.0.0-inplace-aocDay5"
|
||||
dynlibdir = "/home/mbess/.cabal/lib/x86_64-linux-ghc-9.0.1"
|
||||
datadir = "/home/mbess/.cabal/share/x86_64-linux-ghc-9.0.1/aocDay5-0.1.0.0"
|
||||
libexecdir = "/home/mbess/.cabal/libexec/x86_64-linux-ghc-9.0.1/aocDay5-0.1.0.0"
|
||||
sysconfdir = "/home/mbess/.cabal/etc"
|
||||
|
||||
getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, getSysconfDir :: IO FilePath
|
||||
getBinDir = catchIO (getEnv "aocDay5_bindir") (\_ -> return bindir)
|
||||
getLibDir = catchIO (getEnv "aocDay5_libdir") (\_ -> return libdir)
|
||||
getDynLibDir = catchIO (getEnv "aocDay5_dynlibdir") (\_ -> return dynlibdir)
|
||||
getDataDir = catchIO (getEnv "aocDay5_datadir") (\_ -> return datadir)
|
||||
getLibexecDir = catchIO (getEnv "aocDay5_libexecdir") (\_ -> return libexecdir)
|
||||
getSysconfDir = catchIO (getEnv "aocDay5_sysconfdir") (\_ -> return sysconfdir)
|
||||
|
||||
getDataFileName :: FilePath -> IO FilePath
|
||||
getDataFileName name = do
|
||||
dir <- getDataDir
|
||||
return (dir ++ "/" ++ name)
|
|
@ -0,0 +1,120 @@
|
|||
/* DO NOT EDIT: This file is automatically generated by Cabal */
|
||||
|
||||
/* package aocDay5-0.1.0.0 */
|
||||
#ifndef VERSION_aocDay5
|
||||
#define VERSION_aocDay5 "0.1.0.0"
|
||||
#endif /* VERSION_aocDay5 */
|
||||
#ifndef MIN_VERSION_aocDay5
|
||||
#define MIN_VERSION_aocDay5(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 1 || \
|
||||
(major1) == 0 && (major2) == 1 && (minor) <= 0)
|
||||
#endif /* MIN_VERSION_aocDay5 */
|
||||
/* package base-4.15.0.0 */
|
||||
#ifndef VERSION_base
|
||||
#define VERSION_base "4.15.0.0"
|
||||
#endif /* VERSION_base */
|
||||
#ifndef MIN_VERSION_base
|
||||
#define MIN_VERSION_base(major1,major2,minor) (\
|
||||
(major1) < 4 || \
|
||||
(major1) == 4 && (major2) < 15 || \
|
||||
(major1) == 4 && (major2) == 15 && (minor) <= 0)
|
||||
#endif /* MIN_VERSION_base */
|
||||
|
||||
/* tool gcc-11.1.0 */
|
||||
#ifndef TOOL_VERSION_gcc
|
||||
#define TOOL_VERSION_gcc "11.1.0"
|
||||
#endif /* TOOL_VERSION_gcc */
|
||||
#ifndef MIN_TOOL_VERSION_gcc
|
||||
#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\
|
||||
(major1) < 11 || \
|
||||
(major1) == 11 && (major2) < 1 || \
|
||||
(major1) == 11 && (major2) == 1 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_gcc */
|
||||
/* tool ghc-9.0.1 */
|
||||
#ifndef TOOL_VERSION_ghc
|
||||
#define TOOL_VERSION_ghc "9.0.1"
|
||||
#endif /* TOOL_VERSION_ghc */
|
||||
#ifndef MIN_TOOL_VERSION_ghc
|
||||
#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 0 || \
|
||||
(major1) == 9 && (major2) == 0 && (minor) <= 1)
|
||||
#endif /* MIN_TOOL_VERSION_ghc */
|
||||
/* tool ghc-pkg-9.0.1 */
|
||||
#ifndef TOOL_VERSION_ghc_pkg
|
||||
#define TOOL_VERSION_ghc_pkg "9.0.1"
|
||||
#endif /* TOOL_VERSION_ghc_pkg */
|
||||
#ifndef MIN_TOOL_VERSION_ghc_pkg
|
||||
#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 0 || \
|
||||
(major1) == 9 && (major2) == 0 && (minor) <= 1)
|
||||
#endif /* MIN_TOOL_VERSION_ghc_pkg */
|
||||
/* tool haddock-2.24.0 */
|
||||
#ifndef TOOL_VERSION_haddock
|
||||
#define TOOL_VERSION_haddock "2.24.0"
|
||||
#endif /* TOOL_VERSION_haddock */
|
||||
#ifndef MIN_TOOL_VERSION_haddock
|
||||
#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 24 || \
|
||||
(major1) == 2 && (major2) == 24 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_haddock */
|
||||
/* tool hpc-0.68 */
|
||||
#ifndef TOOL_VERSION_hpc
|
||||
#define TOOL_VERSION_hpc "0.68"
|
||||
#endif /* TOOL_VERSION_hpc */
|
||||
#ifndef MIN_TOOL_VERSION_hpc
|
||||
#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 68 || \
|
||||
(major1) == 0 && (major2) == 68 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_hpc */
|
||||
/* tool hsc2hs-0.68.7 */
|
||||
#ifndef TOOL_VERSION_hsc2hs
|
||||
#define TOOL_VERSION_hsc2hs "0.68.7"
|
||||
#endif /* TOOL_VERSION_hsc2hs */
|
||||
#ifndef MIN_TOOL_VERSION_hsc2hs
|
||||
#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\
|
||||
(major1) < 0 || \
|
||||
(major1) == 0 && (major2) < 68 || \
|
||||
(major1) == 0 && (major2) == 68 && (minor) <= 7)
|
||||
#endif /* MIN_TOOL_VERSION_hsc2hs */
|
||||
/* tool pkg-config-1.8.0 */
|
||||
#ifndef TOOL_VERSION_pkg_config
|
||||
#define TOOL_VERSION_pkg_config "1.8.0"
|
||||
#endif /* TOOL_VERSION_pkg_config */
|
||||
#ifndef MIN_TOOL_VERSION_pkg_config
|
||||
#define MIN_TOOL_VERSION_pkg_config(major1,major2,minor) (\
|
||||
(major1) < 1 || \
|
||||
(major1) == 1 && (major2) < 8 || \
|
||||
(major1) == 1 && (major2) == 8 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_pkg_config */
|
||||
/* tool runghc-9.0.1 */
|
||||
#ifndef TOOL_VERSION_runghc
|
||||
#define TOOL_VERSION_runghc "9.0.1"
|
||||
#endif /* TOOL_VERSION_runghc */
|
||||
#ifndef MIN_TOOL_VERSION_runghc
|
||||
#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\
|
||||
(major1) < 9 || \
|
||||
(major1) == 9 && (major2) < 0 || \
|
||||
(major1) == 9 && (major2) == 0 && (minor) <= 1)
|
||||
#endif /* MIN_TOOL_VERSION_runghc */
|
||||
/* tool strip-2.36 */
|
||||
#ifndef TOOL_VERSION_strip
|
||||
#define TOOL_VERSION_strip "2.36"
|
||||
#endif /* TOOL_VERSION_strip */
|
||||
#ifndef MIN_TOOL_VERSION_strip
|
||||
#define MIN_TOOL_VERSION_strip(major1,major2,minor) (\
|
||||
(major1) < 2 || \
|
||||
(major1) == 2 && (major2) < 36 || \
|
||||
(major1) == 2 && (major2) == 36 && (minor) <= 0)
|
||||
#endif /* MIN_TOOL_VERSION_strip */
|
||||
|
||||
#ifndef CURRENT_COMPONENT_ID
|
||||
#define CURRENT_COMPONENT_ID "aocDay5-0.1.0.0-inplace-aocDay5"
|
||||
#endif /* CURRENT_COMPONENT_ID */
|
||||
#ifndef CURRENT_PACKAGE_VERSION
|
||||
#define CURRENT_PACKAGE_VERSION "0.1.0.0"
|
||||
#endif /* CURRENT_PACKAGE_VERSION */
|
BIN
day_5/dist-newstyle/build/x86_64-linux/ghc-9.0.1/aocDay5-0.1.0.0/x/aocDay5/cache/config
vendored
Normal file
BIN
day_5/dist-newstyle/build/x86_64-linux/ghc-9.0.1/aocDay5-0.1.0.0/x/aocDay5/cache/config
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
day_5/dist-newstyle/cache/compiler
vendored
Normal file
BIN
day_5/dist-newstyle/cache/compiler
vendored
Normal file
Binary file not shown.
BIN
day_5/dist-newstyle/cache/config
vendored
Normal file
BIN
day_5/dist-newstyle/cache/config
vendored
Normal file
Binary file not shown.
BIN
day_5/dist-newstyle/cache/elaborated-plan
vendored
Normal file
BIN
day_5/dist-newstyle/cache/elaborated-plan
vendored
Normal file
Binary file not shown.
BIN
day_5/dist-newstyle/cache/improved-plan
vendored
Normal file
BIN
day_5/dist-newstyle/cache/improved-plan
vendored
Normal file
Binary file not shown.
1
day_5/dist-newstyle/cache/plan.json
vendored
Normal file
1
day_5/dist-newstyle/cache/plan.json
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"cabal-version":"3.4.0.0","cabal-lib-version":"3.4.0.0","compiler-id":"ghc-9.0.1","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"aocDay5-0.1.0.0-inplace-aocDay5","pkg-name":"aocDay5","pkg-version":"0.1.0.0","flags":{},"style":"local","pkg-src":{"type":"local","path":"/tmp_workspace/aoc-2021/day_5/."},"dist-dir":"/tmp_workspace/aoc-2021/day_5/dist-newstyle/build/x86_64-linux/ghc-9.0.1/aocDay5-0.1.0.0/x/aocDay5","depends":["base-4.15.0.0"],"exe-depends":[],"component-name":"exe:aocDay5","bin-file":"/tmp_workspace/aoc-2021/day_5/dist-newstyle/build/x86_64-linux/ghc-9.0.1/aocDay5-0.1.0.0/x/aocDay5/build/aocDay5/aocDay5"},{"type":"pre-existing","id":"base-4.15.0.0","pkg-name":"base","pkg-version":"4.15.0.0","depends":["ghc-bignum-1.0","ghc-prim-0.7.0","rts"]},{"type":"pre-existing","id":"ghc-bignum-1.0","pkg-name":"ghc-bignum","pkg-version":"1.0","depends":["ghc-prim-0.7.0"]},{"type":"pre-existing","id":"ghc-prim-0.7.0","pkg-name":"ghc-prim","pkg-version":"0.7.0","depends":["rts"]},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]}]}
|
BIN
day_5/dist-newstyle/cache/solver-plan
vendored
Normal file
BIN
day_5/dist-newstyle/cache/solver-plan
vendored
Normal file
Binary file not shown.
BIN
day_5/dist-newstyle/cache/source-hashes
vendored
Normal file
BIN
day_5/dist-newstyle/cache/source-hashes
vendored
Normal file
Binary file not shown.
BIN
day_5/dist-newstyle/cache/up-to-date
vendored
Normal file
BIN
day_5/dist-newstyle/cache/up-to-date
vendored
Normal file
Binary file not shown.
BIN
day_5/dist-newstyle/packagedb/ghc-9.0.1/package.cache
Normal file
BIN
day_5/dist-newstyle/packagedb/ghc-9.0.1/package.cache
Normal file
Binary file not shown.
10
day_5/example.txt
Normal file
10
day_5/example.txt
Normal file
|
@ -0,0 +1,10 @@
|
|||
0,9 -> 5,9
|
||||
8,0 -> 0,8
|
||||
9,4 -> 3,4
|
||||
2,2 -> 2,1
|
||||
7,0 -> 7,4
|
||||
6,4 -> 2,0
|
||||
0,9 -> 2,9
|
||||
3,4 -> 1,4
|
||||
0,0 -> 8,8
|
||||
5,5 -> 8,2
|
501
day_5/input.txt
Normal file
501
day_5/input.txt
Normal file
|
@ -0,0 +1,501 @@
|
|||
976,35 -> 24,987
|
||||
552,172 -> 870,490
|
||||
647,640 -> 841,834
|
||||
580,460 -> 580,749
|
||||
614,575 -> 746,575
|
||||
97,846 -> 441,846
|
||||
467,680 -> 767,680
|
||||
722,860 -> 722,98
|
||||
31,338 -> 31,581
|
||||
113,712 -> 184,712
|
||||
738,897 -> 136,897
|
||||
820,750 -> 144,74
|
||||
291,411 -> 641,411
|
||||
581,878 -> 581,657
|
||||
449,540 -> 787,202
|
||||
79,925 -> 981,23
|
||||
800,120 -> 36,884
|
||||
253,603 -> 253,643
|
||||
574,138 -> 574,966
|
||||
847,199 -> 144,902
|
||||
816,177 -> 243,750
|
||||
963,632 -> 472,141
|
||||
38,41 -> 986,989
|
||||
980,225 -> 980,801
|
||||
255,350 -> 647,350
|
||||
732,311 -> 732,907
|
||||
109,662 -> 113,662
|
||||
333,317 -> 470,180
|
||||
111,146 -> 339,146
|
||||
136,856 -> 534,458
|
||||
555,39 -> 555,895
|
||||
699,327 -> 699,496
|
||||
280,948 -> 660,948
|
||||
919,293 -> 316,896
|
||||
343,645 -> 620,368
|
||||
14,984 -> 975,23
|
||||
219,653 -> 696,176
|
||||
50,350 -> 50,956
|
||||
919,550 -> 919,568
|
||||
405,532 -> 238,532
|
||||
328,95 -> 979,746
|
||||
564,716 -> 119,716
|
||||
52,285 -> 52,126
|
||||
240,671 -> 963,671
|
||||
691,416 -> 676,431
|
||||
216,247 -> 216,530
|
||||
103,309 -> 103,643
|
||||
265,163 -> 981,879
|
||||
623,399 -> 760,262
|
||||
392,568 -> 674,286
|
||||
280,82 -> 863,665
|
||||
657,522 -> 657,858
|
||||
194,16 -> 443,16
|
||||
158,326 -> 158,372
|
||||
582,530 -> 582,159
|
||||
857,638 -> 857,807
|
||||
463,575 -> 463,108
|
||||
74,390 -> 74,967
|
||||
437,892 -> 224,892
|
||||
854,409 -> 366,897
|
||||
875,858 -> 875,871
|
||||
245,683 -> 735,193
|
||||
911,285 -> 216,980
|
||||
944,170 -> 701,170
|
||||
149,244 -> 149,653
|
||||
879,926 -> 70,117
|
||||
193,198 -> 777,782
|
||||
11,581 -> 287,305
|
||||
513,163 -> 939,163
|
||||
551,705 -> 551,636
|
||||
546,79 -> 546,630
|
||||
392,877 -> 392,240
|
||||
859,821 -> 859,975
|
||||
755,581 -> 755,722
|
||||
941,636 -> 976,636
|
||||
212,807 -> 595,807
|
||||
24,847 -> 24,248
|
||||
972,46 -> 40,978
|
||||
434,328 -> 491,328
|
||||
573,663 -> 16,663
|
||||
882,43 -> 882,777
|
||||
162,786 -> 11,786
|
||||
774,340 -> 322,340
|
||||
33,775 -> 883,775
|
||||
422,958 -> 212,748
|
||||
973,879 -> 415,321
|
||||
278,602 -> 435,759
|
||||
983,99 -> 321,99
|
||||
594,502 -> 727,635
|
||||
755,674 -> 314,233
|
||||
67,336 -> 702,336
|
||||
617,128 -> 617,287
|
||||
735,929 -> 165,929
|
||||
758,778 -> 758,679
|
||||
38,27 -> 971,960
|
||||
873,419 -> 949,419
|
||||
305,138 -> 978,811
|
||||
282,404 -> 377,404
|
||||
753,267 -> 945,267
|
||||
877,796 -> 64,796
|
||||
35,32 -> 949,946
|
||||
18,383 -> 64,429
|
||||
855,407 -> 938,324
|
||||
845,965 -> 88,208
|
||||
77,960 -> 960,77
|
||||
225,714 -> 490,714
|
||||
619,40 -> 395,40
|
||||
87,379 -> 87,178
|
||||
961,828 -> 302,828
|
||||
78,321 -> 78,816
|
||||
243,620 -> 883,620
|
||||
581,560 -> 69,560
|
||||
420,957 -> 768,957
|
||||
927,427 -> 908,408
|
||||
100,406 -> 100,736
|
||||
369,27 -> 199,27
|
||||
177,804 -> 177,727
|
||||
83,807 -> 166,724
|
||||
358,119 -> 358,583
|
||||
866,223 -> 348,741
|
||||
283,636 -> 283,476
|
||||
792,481 -> 161,481
|
||||
126,476 -> 612,962
|
||||
829,437 -> 829,444
|
||||
402,683 -> 402,11
|
||||
680,278 -> 676,278
|
||||
391,597 -> 521,467
|
||||
467,787 -> 646,608
|
||||
637,689 -> 637,959
|
||||
161,173 -> 161,604
|
||||
582,252 -> 582,181
|
||||
971,93 -> 329,93
|
||||
763,195 -> 156,802
|
||||
576,504 -> 755,325
|
||||
156,56 -> 657,557
|
||||
276,940 -> 836,380
|
||||
800,933 -> 800,734
|
||||
486,607 -> 486,54
|
||||
847,679 -> 299,131
|
||||
558,711 -> 558,643
|
||||
44,869 -> 44,877
|
||||
897,399 -> 897,265
|
||||
856,217 -> 856,701
|
||||
395,784 -> 395,634
|
||||
443,647 -> 443,977
|
||||
59,735 -> 59,860
|
||||
564,519 -> 173,910
|
||||
516,860 -> 54,860
|
||||
23,467 -> 23,551
|
||||
82,102 -> 849,869
|
||||
316,551 -> 195,551
|
||||
943,41 -> 25,959
|
||||
314,865 -> 314,74
|
||||
434,491 -> 501,491
|
||||
941,563 -> 860,563
|
||||
937,842 -> 320,225
|
||||
415,725 -> 415,841
|
||||
822,308 -> 500,308
|
||||
136,434 -> 22,434
|
||||
275,356 -> 280,356
|
||||
672,935 -> 22,935
|
||||
776,22 -> 55,743
|
||||
219,198 -> 219,775
|
||||
977,923 -> 977,344
|
||||
37,922 -> 815,144
|
||||
107,493 -> 107,804
|
||||
840,913 -> 840,686
|
||||
249,774 -> 249,485
|
||||
765,696 -> 649,696
|
||||
491,708 -> 302,708
|
||||
345,589 -> 345,357
|
||||
935,206 -> 759,206
|
||||
757,823 -> 30,96
|
||||
590,513 -> 746,513
|
||||
373,18 -> 845,490
|
||||
816,829 -> 816,608
|
||||
104,15 -> 964,875
|
||||
650,675 -> 650,389
|
||||
333,987 -> 857,463
|
||||
627,398 -> 627,223
|
||||
578,208 -> 159,208
|
||||
355,594 -> 355,633
|
||||
63,921 -> 873,921
|
||||
510,434 -> 801,143
|
||||
953,928 -> 308,283
|
||||
947,48 -> 25,970
|
||||
384,203 -> 384,97
|
||||
806,160 -> 934,288
|
||||
690,29 -> 269,29
|
||||
825,834 -> 269,278
|
||||
620,613 -> 620,540
|
||||
554,698 -> 419,833
|
||||
887,554 -> 457,554
|
||||
276,573 -> 276,487
|
||||
213,211 -> 213,619
|
||||
437,621 -> 141,917
|
||||
951,59 -> 951,272
|
||||
270,455 -> 270,336
|
||||
727,25 -> 42,710
|
||||
803,384 -> 615,196
|
||||
643,715 -> 643,741
|
||||
750,815 -> 642,923
|
||||
464,693 -> 714,943
|
||||
828,773 -> 189,134
|
||||
507,858 -> 58,858
|
||||
289,898 -> 190,898
|
||||
380,518 -> 749,149
|
||||
696,219 -> 760,219
|
||||
678,177 -> 686,185
|
||||
241,103 -> 857,103
|
||||
782,773 -> 782,508
|
||||
20,24 -> 277,281
|
||||
175,805 -> 59,805
|
||||
375,944 -> 375,938
|
||||
180,971 -> 203,971
|
||||
379,984 -> 830,984
|
||||
298,376 -> 254,376
|
||||
807,376 -> 486,376
|
||||
931,512 -> 931,931
|
||||
889,859 -> 361,859
|
||||
632,546 -> 298,880
|
||||
429,616 -> 583,770
|
||||
814,838 -> 503,527
|
||||
64,301 -> 753,301
|
||||
706,124 -> 706,698
|
||||
323,976 -> 323,43
|
||||
42,82 -> 550,590
|
||||
260,528 -> 260,462
|
||||
201,656 -> 593,656
|
||||
348,516 -> 203,516
|
||||
201,675 -> 413,675
|
||||
928,70 -> 138,860
|
||||
323,427 -> 601,427
|
||||
874,156 -> 630,156
|
||||
335,374 -> 335,522
|
||||
237,551 -> 597,551
|
||||
14,125 -> 909,125
|
||||
805,59 -> 67,797
|
||||
656,684 -> 656,263
|
||||
487,544 -> 487,464
|
||||
637,890 -> 637,606
|
||||
27,983 -> 952,58
|
||||
899,93 -> 77,915
|
||||
504,288 -> 504,689
|
||||
404,289 -> 700,289
|
||||
643,336 -> 321,336
|
||||
190,865 -> 674,865
|
||||
844,12 -> 81,775
|
||||
821,365 -> 821,453
|
||||
503,20 -> 503,811
|
||||
20,122 -> 983,122
|
||||
28,231 -> 398,231
|
||||
441,263 -> 931,263
|
||||
130,19 -> 925,19
|
||||
577,873 -> 577,706
|
||||
322,489 -> 322,621
|
||||
269,134 -> 935,800
|
||||
61,841 -> 491,841
|
||||
286,720 -> 542,464
|
||||
497,530 -> 497,266
|
||||
178,616 -> 512,282
|
||||
184,338 -> 184,241
|
||||
906,946 -> 327,946
|
||||
879,947 -> 879,302
|
||||
815,788 -> 963,788
|
||||
791,322 -> 791,395
|
||||
851,116 -> 793,116
|
||||
232,114 -> 934,816
|
||||
273,839 -> 157,839
|
||||
184,876 -> 184,138
|
||||
298,586 -> 634,250
|
||||
130,127 -> 130,753
|
||||
453,485 -> 855,887
|
||||
663,776 -> 934,776
|
||||
799,326 -> 799,661
|
||||
56,498 -> 274,716
|
||||
650,317 -> 52,915
|
||||
93,342 -> 391,44
|
||||
972,22 -> 59,935
|
||||
761,78 -> 508,331
|
||||
577,578 -> 15,16
|
||||
51,902 -> 72,881
|
||||
51,91 -> 51,422
|
||||
89,602 -> 89,280
|
||||
339,129 -> 339,329
|
||||
173,413 -> 489,413
|
||||
756,383 -> 745,383
|
||||
216,39 -> 216,373
|
||||
844,404 -> 552,404
|
||||
313,276 -> 313,895
|
||||
236,330 -> 231,330
|
||||
836,496 -> 836,291
|
||||
18,48 -> 950,980
|
||||
562,408 -> 562,606
|
||||
70,105 -> 70,469
|
||||
402,458 -> 694,166
|
||||
228,644 -> 689,183
|
||||
220,646 -> 834,32
|
||||
691,734 -> 141,184
|
||||
24,974 -> 978,20
|
||||
805,111 -> 11,905
|
||||
765,765 -> 210,210
|
||||
265,810 -> 248,810
|
||||
742,506 -> 179,506
|
||||
945,954 -> 40,49
|
||||
403,464 -> 600,464
|
||||
149,784 -> 754,784
|
||||
784,757 -> 222,757
|
||||
905,839 -> 160,839
|
||||
660,971 -> 609,971
|
||||
148,505 -> 309,505
|
||||
571,494 -> 323,494
|
||||
573,109 -> 71,109
|
||||
513,649 -> 54,649
|
||||
287,582 -> 287,604
|
||||
569,218 -> 569,790
|
||||
108,740 -> 108,816
|
||||
542,899 -> 445,802
|
||||
939,519 -> 939,752
|
||||
810,643 -> 810,236
|
||||
571,95 -> 560,106
|
||||
547,431 -> 547,42
|
||||
299,536 -> 299,820
|
||||
506,808 -> 437,808
|
||||
727,803 -> 941,589
|
||||
583,100 -> 891,100
|
||||
552,556 -> 515,556
|
||||
789,871 -> 90,172
|
||||
81,649 -> 641,89
|
||||
264,518 -> 511,518
|
||||
498,324 -> 596,324
|
||||
642,836 -> 642,481
|
||||
695,827 -> 768,900
|
||||
603,940 -> 603,352
|
||||
975,64 -> 92,947
|
||||
65,515 -> 65,405
|
||||
766,667 -> 344,667
|
||||
284,162 -> 245,162
|
||||
139,123 -> 942,926
|
||||
316,906 -> 316,907
|
||||
42,418 -> 224,600
|
||||
338,733 -> 338,46
|
||||
448,744 -> 448,796
|
||||
198,153 -> 198,723
|
||||
122,433 -> 712,433
|
||||
887,708 -> 685,708
|
||||
452,265 -> 817,630
|
||||
317,613 -> 317,959
|
||||
185,841 -> 788,238
|
||||
702,558 -> 734,558
|
||||
45,749 -> 330,464
|
||||
250,174 -> 250,561
|
||||
276,664 -> 793,664
|
||||
164,434 -> 619,434
|
||||
360,13 -> 686,339
|
||||
52,333 -> 361,642
|
||||
315,675 -> 315,175
|
||||
646,530 -> 815,699
|
||||
363,554 -> 58,554
|
||||
730,80 -> 38,772
|
||||
90,85 -> 494,85
|
||||
863,64 -> 218,64
|
||||
633,492 -> 633,134
|
||||
321,919 -> 324,919
|
||||
395,133 -> 395,592
|
||||
152,963 -> 983,132
|
||||
42,149 -> 674,781
|
||||
754,146 -> 858,146
|
||||
53,628 -> 976,628
|
||||
433,365 -> 433,735
|
||||
951,360 -> 951,913
|
||||
875,250 -> 875,463
|
||||
923,348 -> 208,348
|
||||
951,586 -> 103,586
|
||||
818,924 -> 178,284
|
||||
265,130 -> 265,859
|
||||
26,410 -> 805,410
|
||||
847,149 -> 190,806
|
||||
136,36 -> 797,36
|
||||
841,660 -> 620,660
|
||||
759,553 -> 393,919
|
||||
530,743 -> 647,860
|
||||
163,909 -> 979,93
|
||||
798,175 -> 399,574
|
||||
934,847 -> 934,231
|
||||
373,749 -> 373,397
|
||||
679,871 -> 695,887
|
||||
407,468 -> 524,468
|
||||
890,611 -> 988,611
|
||||
104,706 -> 745,65
|
||||
533,659 -> 533,126
|
||||
342,460 -> 187,460
|
||||
398,26 -> 398,254
|
||||
116,11 -> 886,781
|
||||
846,317 -> 329,834
|
||||
919,104 -> 120,903
|
||||
93,843 -> 912,24
|
||||
618,610 -> 618,311
|
||||
834,276 -> 85,276
|
||||
983,26 -> 42,967
|
||||
412,706 -> 412,204
|
||||
51,966 -> 952,65
|
||||
969,871 -> 969,258
|
||||
51,652 -> 608,95
|
||||
289,903 -> 869,903
|
||||
283,760 -> 781,760
|
||||
521,74 -> 521,848
|
||||
720,572 -> 638,572
|
||||
146,847 -> 146,930
|
||||
980,953 -> 42,15
|
||||
49,956 -> 941,64
|
||||
209,242 -> 905,242
|
||||
249,185 -> 374,60
|
||||
916,738 -> 916,793
|
||||
12,922 -> 872,62
|
||||
543,198 -> 123,198
|
||||
316,423 -> 316,549
|
||||
694,514 -> 869,514
|
||||
36,46 -> 916,926
|
||||
427,295 -> 267,295
|
||||
884,669 -> 884,175
|
||||
558,379 -> 549,379
|
||||
89,85 -> 968,964
|
||||
48,544 -> 48,675
|
||||
337,81 -> 337,870
|
||||
953,46 -> 44,955
|
||||
37,912 -> 251,698
|
||||
342,191 -> 342,238
|
||||
874,289 -> 353,810
|
||||
547,935 -> 97,485
|
||||
392,359 -> 859,826
|
||||
329,815 -> 329,98
|
||||
65,22 -> 118,75
|
||||
803,341 -> 803,763
|
||||
389,98 -> 964,98
|
||||
420,520 -> 396,520
|
||||
204,650 -> 583,650
|
||||
446,77 -> 739,77
|
||||
208,447 -> 75,580
|
||||
693,443 -> 693,668
|
||||
341,697 -> 802,697
|
||||
398,718 -> 318,638
|
||||
430,38 -> 430,665
|
||||
519,932 -> 490,932
|
||||
381,492 -> 242,353
|
||||
896,616 -> 638,616
|
||||
520,552 -> 901,933
|
||||
750,44 -> 307,44
|
||||
653,209 -> 186,676
|
||||
399,447 -> 208,256
|
||||
741,146 -> 741,399
|
||||
228,893 -> 228,214
|
||||
934,925 -> 71,62
|
||||
986,74 -> 74,986
|
||||
422,88 -> 467,43
|
||||
566,680 -> 875,371
|
||||
328,465 -> 38,465
|
||||
705,620 -> 705,441
|
||||
534,256 -> 534,784
|
||||
909,939 -> 909,222
|
||||
467,640 -> 323,640
|
||||
372,725 -> 816,281
|
||||
78,631 -> 78,933
|
||||
739,376 -> 397,718
|
||||
901,954 -> 153,206
|
||||
869,212 -> 799,212
|
||||
192,946 -> 192,736
|
||||
946,13 -> 13,946
|
||||
267,480 -> 267,561
|
||||
954,287 -> 954,190
|
||||
145,935 -> 913,167
|
||||
295,152 -> 458,152
|
||||
10,690 -> 139,690
|
||||
121,23 -> 977,879
|
||||
265,247 -> 265,976
|
||||
281,793 -> 787,793
|
||||
988,355 -> 367,976
|
||||
97,807 -> 323,807
|
||||
527,506 -> 474,506
|
||||
359,340 -> 359,280
|
||||
371,203 -> 801,203
|
||||
53,593 -> 53,980
|
||||
377,705 -> 987,95
|
||||
901,975 -> 153,227
|
||||
851,442 -> 565,442
|
||||
425,976 -> 850,551
|
||||
766,674 -> 766,572
|
||||
18,757 -> 18,444
|
||||
386,682 -> 386,424
|
||||
966,640 -> 604,278
|
||||
919,973 -> 141,195
|
||||
672,768 -> 405,768
|
||||
271,814 -> 971,114
|
||||
719,902 -> 474,902
|
||||
365,768 -> 877,256
|
||||
360,787 -> 214,787
|
||||
133,616 -> 266,483
|
||||
577,399 -> 59,399
|
||||
290,74 -> 290,145
|
||||
154,131 -> 154,210
|
||||
|
Loading…
Reference in a new issue