aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--2023/12/12a.c63
-rw-r--r--2023/12/12b.c68
-rw-r--r--2023/12/example.txt6
-rw-r--r--2023/12/in.txt1000
4 files changed, 1137 insertions, 0 deletions
diff --git a/2023/12/12a.c b/2023/12/12a.c
new file mode 100644
index 0000000..d88ed9a
--- /dev/null
+++ b/2023/12/12a.c
@@ -0,0 +1,63 @@
1#include <inttypes.h>
2#include <stdbool.h>
3#include <stdio.h>
4#include <stdlib.h>
5#include <string.h>
6
7#define N 1000
8
9#define MAX(a,b) ((a)>(b)?(a):(b))
10#define MIN(a,b) ((a)<(b)?(a):(b))
11#define ABS(a) MAX((a),-(a))
12
13#define isnum(c) (c == '-' || (c >= '0' && c <= '9'))
14
15char *buf, line[N];
16int s, n, a[N];
17
18int readl(int nums[], char *buf) {
19 int64_t i;
20 for (i = 0; *buf; buf++) {
21 if (!isnum(*buf)) continue;
22 nums[i++] = atoll(buf);
23 while (isnum(*buf)) buf++;
24 }
25 return i;
26}
27
28int isgood(char *line, int a[], int n) {
29 int b[N];
30 memset(b, 0, N * sizeof(int));
31 memcpy(b, a, n * sizeof(int));
32 for (int j = 0, c = 0; *line != ' '; line++) {
33 if (*line == '?') printf("Error!\n");
34 if (*line == '.') { j += c; c = 0; }
35 if (*line == '#') { c = 1; b[j]--; }
36 }
37 for (int j = 0; j < N; j++)
38 if (b[j])
39 return 0;
40 return 1;
41}
42
43int arrange(char *line, char *buf, int a[], int n) {
44 while (*buf != '?' && *buf != ' ') buf++;
45 if (*buf == ' ')
46 return isgood(line, a, n);
47 *buf = '.';
48 int x = arrange(line, buf, a, n);
49 *buf = '#';
50 int y = arrange(line, buf, a, n);
51 *buf = '?';
52 return x + y;
53}
54
55int main() {
56 while ((buf = fgets(line, N, stdin)) != NULL) {
57 n = readl(a, buf);
58 s += arrange(line, buf, a, n);
59 }
60
61 printf("%d\n", s);
62 return 0;
63}
diff --git a/2023/12/12b.c b/2023/12/12b.c
new file mode 100644
index 0000000..97efd95
--- /dev/null
+++ b/2023/12/12b.c
@@ -0,0 +1,68 @@
1#include <inttypes.h>
2#include <stdio.h>
3#include <stdlib.h>
4#include <string.h>
5
6#define N 200
7#define T 5
8#define isnum(c) (c == '-' || (c >= '0' && c <= '9'))
9
10char *buf, line[N];
11int64_t s, m, n, p, a[N], mem[N][N][N];
12
13int64_t readl(int64_t nums[], char *buf) {
14 int64_t i;
15 for (i = 0; *buf; buf++) {
16 if (!isnum(*buf)) continue;
17 nums[i++] = atoll(buf);
18 while (isnum(*buf)) buf++;
19 }
20 return i;
21}
22
23int64_t f(int64_t j, int64_t i, int64_t k) {
24 if (mem[j][i][k] != -1)
25 return mem[j][i][k];
26 if (i > n || k > a[i])
27 return mem[j][i][k] = 0;
28
29 int64_t ret = 0;
30 if (j == m)
31 ret = i == n && k == 0;
32 if (line[j] == '#' || line[j] == '?')
33 ret += f(j+1, i, k+1);
34 if ((line[j] == '.' || line[j] == '?') && (k == 0 || k == a[i]))
35 ret += f(j+1, i+(k>0), 0);
36 return mem[j][i][k] = ret;
37}
38
39int main() {
40 while ((buf = fgets(line, N, stdin)) != NULL) {
41 n = readl(a, buf);
42
43 /* Multiply strings by T (1 for part 1, 5 for part 2) */
44 for (m = 0; line[m] != ' '; m++) ;
45 for (int64_t t = 1; t < T; t++) {
46 memcpy(a + t * n, a, n * sizeof(int64_t));
47 line[t*(m+1)-1] = '?';
48 memcpy(line + t * (m + 1), line, (m + 1));
49 }
50 m = T*(m+1);
51 line[m-1] = '.';
52 line[m] = 0;
53 n *= T;
54 a[n] = 0;
55
56 /* Reset memoization table */
57 for (int64_t j = 0; j <= m; j++)
58 for (int64_t i = 0; i <= n; i++)
59 for (int64_t k = 0; k <= m; k++)
60 mem[j][i][k] = -1;
61
62 /* Compute solution */
63 s += f(0, 0, 0);
64 }
65
66 printf("%" PRId64 "\n", s);
67 return 0;
68}
diff --git a/2023/12/example.txt b/2023/12/example.txt
new file mode 100644
index 0000000..283afae
--- /dev/null
+++ b/2023/12/example.txt
@@ -0,0 +1,6 @@
1???.### 1,1,3
2.??..??...?##. 1,1,3
3?#?#?#?#?#?#?#? 1,3,1,6
4????.#...#... 4,1,1
5????.######..#####. 1,6,5
6?###???????? 3,2,1 \ No newline at end of file
diff --git a/2023/12/in.txt b/2023/12/in.txt
new file mode 100644
index 0000000..6336d44
--- /dev/null
+++ b/2023/12/in.txt
@@ -0,0 +1,1000 @@
1#???#?#?.?##?#?.#. 7,5,1
2??#?#?#????.????#? 6,2,1,1
3.#????????.??? 5,1,1,1
4?#.??.??????? 1,1,1,2
5#.???#?##.??.????. 1,1,1,2,2,1
6?????????.??? 7,1
7?#?.?#????# 1,2,3
8.????..??#?. 3,2
9???..?#?.##???##.?#? 2,2,3,2,2
10??#?.#..???? 3,1,2
11??##?#???????? 5,1,1
12#????????#??#?? 1,10
13.?????????? 4,1
14.??#?##???#???## 6,1,1,4
15?#?#?.?#??.??????#? 4,1,4,2
16?##?#??#???? 7,1
17##???.?????. 2,1,1,1
18.???....??#?. 1,4
19??#.#??.#.??#??? 1,2,1,5
20.???##?#?#???.#. 1,8,1
21?.??#?..#?.?? 1,2,1,1
22..??#????????##? 5,4
23?#?#???#?#? 4,1,2
24??#??????## 3,2,2
25.??##??????#?????? 3,5
26?##.?.????????.?.?#. 2,1,1,4,1,2
27.?#?#?.???? 4,4
28???.??#??????##? 3,4,6
29????#??????#? 3,1
30##?????#?#???.?. 11,1,1
31#?#??.???#?#??.?#??? 1,2,1,3,1,5
32???#??#?????????? 1,1,1,8
33#???#??.#??? 1,1,1,4
34?????.?.?? 1,2,1
35#??#?#?????????#. 6,1,1,3
36????.#?.?#.. 1,2,1
37???????.#.### 1,3,1,3
38???#??.??#? 5,1
39#?.?##?#??#??? 1,7,2
40??????#.?????.?. 5,1,2,1
41??#????????????# 1,2,1,2,1
42????#?#?????#? 1,4,2,2
43.##?.??#?#. 2,1,1
44?.###.???# 3,1
45?#.?????#??.??? 1,8,1
46?##?.??#???? 4,5
47?#?.??.?#??. 1,2,3
48?#????.?#???????#?? 2,1,4,1,1,3
49.??##???????#?.??? 12,1
50?#??.????.#??#..? 4,1,1,1,1
51?????????#?#?.# 2,1,2,1,1
52#??#??#.?#?#???? 5,1,4,2
53?####???????..?. 11,1
54????#?#??#. 2,3,2
55???????#??????#?? 3,7,2
56?????##?##.???? 10,2
57???????#????#?#?#### 1,1,1,1,10
58???????.??#???#? 2,1,1,1,3
59???#.?#??????. 1,6
60??##?##??????????.?? 14,1
61?#?##????#?.? 4,2
62?????.#?#?. 2,4
63..???#??.??????.? 4,2
64#??##??#?.#.?..# 1,5,1,1,1
65?#..???????.?## 2,1,1,3,3
66#?.????#?##? 1,7
67.??.?##????##?????? 2,5
68??????.###?##??? 3,7
69????#??????#?.???? 1,11,1,1
70?#?#?###?##???#.???. 12,1,1
71.#????#?.??????? 1,1,3,2,1
72.?#???#####??.#???? 10,1,1,1
73??#?.#.?#??#??# 1,1,1,5,1
74#??#?????? 1,4,2
75????.??.??##?#?.?#? 1,2,1,4,2,1
76?.???.??.? 3,1
77???##????.???.?? 1,3,1,1,2
78??.??#????.?.??# 2,1,2,1,3
79.??????#?. 1,2
80?..?????#????? 8,1
81.??#????????????.? 6,5
82??#?.????#? 2,2,1
83??#??.#?.??? 1,1,1,1
84??#??#??###??? 4,7
85??.??#????#?#?.. 8,1
86?..???????.?#??? 1,1,2,5
87???????.??.#??? 4,1,2,1,1
88????????#??.#? 7,1
89??#.?????? 2,2
90??#????.???## 2,1,5
91??.??#?#.##?? 2,4,2
92.???.####?#?? 1,7
93?.#?????#????## 1,1,10
94?#??.###?###???..#? 3,8,1,1
95#.?##?????#?##?? 1,4,6
96?#.?###???#?#????#? 1,11,1
97?##?#????.???. 9,3
98???#???????#.?.? 1,1,1,3,1
99??????.????#????## 3,1,1,4,1,2
100.?#?#?.#???#? 1,1,2,2
101?.???.?#?#?????????# 1,1,1,5,1,1
102??#.??????? 1,2,3
103#?#??.??.?.??#?#?? 3,1,1,6
104.?#??#?#??????#?# 5,4,5
105.#????##???? 7,1
106???##???.?#?.?? 8,2
107?#???????.?# 4,1,1
108#?#?????.??#???? 1,1,1,1,6
109?#??#?????? 4,1
110?????#???????#.#? 1,9,1,1
111#????.???#???#?#???# 1,1,9,1
112??.#??#.?? 1,4
113.????.?.??.?.?.#??#? 2,1,1,1,1
114?????.?##. 2,3
115?.#???##??? 1,4
116.#??#???#?? 1,7
117?????#?.?.??#???.?.? 6,4
118????.?#.?#????? 2,1,3,1
119??##?#????#??? 6,3
120??????.?#.?.?.?? 1,3,1,1,1
121.#??.#?#.. 3,1,1
122#?.?#???.????? 1,2,1,2
123.??.?.?.?? 1,1,1
124??????#??#??..?.? 6,1
125?????.??...#?#??#? 2,6
126??..???..??.???#???? 2,6
127?.????#?????..???? 1,7,1
128.?####??#?#??.?#.. 10,2
129?.??##.?#? 1,4,2
130?#?.??.?????.?. 3,1
131?#???###???. 2,4,1
132#????#???.#??##???.? 2,5,5,1,1
133.??#??????#? 3,3,2
134??#.##?#?#? 2,7
135?#?.?.???? 2,1,2
136??#??.##??????? 1,5,1
137?#..??#??#?#?#?..#?? 1,1,9,1
138?#??.?????#?#? 3,1,5
139??.???#????#..?? 1,9
140???????#####?.??. 2,2,6,2
141????#???????.? 2,1,1,1
142????????#.?#. 1,1,1,2
143???.????###?####???? 2,2,8,1
144???.#..??#??###? 1,1,1,7
145?#???..?.??. 4,1,1
146?#?..?????##?#???.?# 2,1,9,1
147?.????.?????? 2,3
148??#?????????##. 1,5,5
149???..??.?.?? 2,1,1,1
150#.?#?.#?##???? 1,1,5,1
151?#????##.?.???.#??# 5,2,1,2,1,1
152?.#.?..?.? 1,1
153?#??#?????##?? 2,1,6,1
154.#???.?????.. 4,4
155.?##??#?#???? 3,2,1,1
156#.#.?###???.#?#.?. 1,1,6,1,1,1
157???#.##?#????#.?# 2,1,4,4,1
158?#???#????.????#?#.? 1,4,1,2,3,1
159#??????#??#?.??.##.? 12,2
160???#?????.?##??#??? 5,7
161.???##????????.#?. 7,4,2
162#??.?????.???.?? 2,3,1,1,1
163????.??#???? 2,5
164?????#??.#.???? 1,2,2,1,4
165???#?.???????#? 4,1,3
166??.???#???.?#??.? 1,5,1,1
167...?##?????.?#???. 3,2
168.??##??????#?. 5,3,2
169.??##?????????? 3,4,1
170#???????.?? 1,4,1
171#.???##????.??#??? 1,1,7,1,1,1
172???????.#?# 1,3,3
173??.?#?#?#.?? 2,1,1,1
174????#???##?#?? 4,7
175?.##??.?###?#?#? 4,9
176????#????#??????# 1,2,8,1
177????..???? 2,2
178???#?###?.?? 7,1
179?#?.??.????# 2,1,2
180.??###?#.?.???? 5,1,1,1,1
181?#.???????## 1,1,7
182#??.??#???#?.?? 2,2,1,2,2
183???.???#???????# 2,4,1,2
184#?#..?.???????##. 1,1,1,1,6
185???.???..? 2,3
186.??..???????.??#??.? 6,4
187.?#????????#?.?? 1,5
188??#??????##?#?#?#.? 3,1,9
189?.??#???????#?# 2,9
190?????????? 1,7
191??##..?.?#??#?#???? 3,1,1,2,1,2
192??????.#??? 3,1
193#?.??#??#???.??.?#. 2,8,1
194??.????#.????#??#? 2,8
195???#?#????#?.????? 1,7,2,1,1
196????.?.??.??#??. 1,1,2,4
197????#?.??? 3,2
198..??#?##??.??? 6,1,1,1
199??????.????##.?? 3,6
200?##?????????#?#?? 4,2,6
201??.?#?????????? 2,1
202?.???.??.?????#??? 1,2,1,7
203.????#????.???#??# 1,7,2,2,1
204????.?#?#. 2,1,4
205.??.????..??#?#????? 2,7
206?.?##?###??#????# 11,2
207?#???#?#?????????#? 8,3,1,2
208?????.?????##??????? 1,2,7,1
209???#????#?.??? 5,1,1,1
210?.?????.???##??# 5,2,2,2
211?###?????.??????#. 9,1,1,1,1
212.???????..##? 5,3
213?#??????#..? 1,6
214??.#??????.?. 1,1,5,1
215.?????.?#??? 1,1,1,1
216?#???????????? 1,1,9
217#?##???#????????? 1,2,3,1,2
218#?.?##????##??# 1,11
219?.????.?#????#??? 1,2,8,1
220?#.???#??# 1,2,2
221.??.????????#??#.? 1,1,2,1,4,1
222????.?#.????#.?. 1,1,3
223.#?#?.?#??? 4,3,1
224?.?????#?? 1,2,2
225?????.??????#?? 3,9
226???#?#?##??##????.? 7,7
227##?#.???.?. 4,2,1
228??#??##??#? 1,1,6
229##??????#??????#??.# 3,3,4,3,1
230??.?#??.#?????????? 4,2,1,2
231.?#??##??.?# 1,5,1
232??.??#???#???.?.??? 1,7,1,1,2
233??.#.?..#?.?#??????? 1,1,1,2,1,4
234.#????###?#?.#?.??# 2,8,1,3
235.##??#?????.?# 3,3,1,1
236##???#???????.? 10,1,1
237??????#??.#?..# 7,2,1
238#?..??#??????#?#??? 2,15
239???????.?#? 1,1,3
240.?.?#..?#?##? 1,5
241?#??#?.??#???#.????? 1,1,4,2,1,2
242???.?#?????# 1,1,3,1
243??.????##??.??? 2,3
244????.????#??#?#? 2,1,7
245#??#????.???#.?? 1,3,1,1,1
246?#????????# 3,2,1
247.???.?#?.#?.?#. 3,1,2,1
248?#??#????. 2,2,2
249??.????????#. 1,5,3
250.??????????.. 2,4
251???.???..#??. 2,2,3
252.#????##??# 1,6,1
253##???#???????? 2,4,2,2
254??????#??##?. 6,4
255.?#?##.???#??? 4,2
256#.#.#???#..?##? 1,1,1,3,4
257?#??..????#? 1,1,2,2
258??##????#?##???????# 2,11,2
259.?#??.?..?. 3,1
260??#???????#?..?.# 1,1,8,1,1
261#???##??#?#??.?.? 1,10,1,1
262?#??.???.???? 2,1,1,2
263???????#??#..???? 6,1,2,1
264??????.#?#?##??.#? 1,1,7,1
265????#???#?#???#??. 1,1,13
266.?????????#?? 1,6
267??.?#?.?## 2,2
268..?.??##?... 1,3
269?.#??.????. 3,3
270.?###????#?.????? 9,1
271????.###.?? 1,3
272.#??????.#?? 5,1
273????.?.???.. 2,1,2
274?.#????.?#... 4,1
275???#??###? 1,1,4
276???####?.?? 1,5,2
277?.??###?###??#?..#? 5,3,3,2
278..?#.????. 2,2
279???..??#???? 1,3,1,1
280??.???#?.?.????#.?? 5,4
281.???????#?##????#?? 1,12
282?#?.?##???.?#???? 3,3,3
283#?##?#?#?#??.?#.?? 1,6,3,2,1
284?####?.?.#??????#?? 5,8
285..???????##??.???#?. 11,1,1
286??.?##??..????#? 1,3,1,1,3
287#???#?...# 1,2,1
288#????????. 3,4
289?.??.??.##??? 2,4
290???.?.##?# 1,4
291??????#?#?. 1,4
292????????.#?#?..?#??? 6,4,5
293??.???#??#???#?? 1,9,1,1
294?#?#????.?#?##. 6,4
295??#?#?.????#???? 2,2,6,1
296?.?.?????#?????#.?? 1,1,1,5,1,1
297????.?????????????? 2,1,2,1,1,4
298??.?.???.. 1,1,1
299.#?.?#???.#?.??? 2,3,1,1
300?.??#??#????.??.?? 1,10,1,1
301.#.?#???#??.??#??#?? 1,2,1,1,1,3
302?.?#???#?? 1,1,4
303????#??#.?#?????##?? 5,2,7
304?????#?.???#?????? 6,4,1
305?.?????.???#????. 1,5
306????#????? 3,1
307?#.#????#..#?##??#?? 1,6,7,1
308?#??#?.??????? 5,1,2,1
309??#.?????????#??#.?? 1,1,10,2
310?????????.#?..???? 3,1,3
311.???..??.??? 1,1,2,1
312#??#???.#??.??##?? 4,3,4
313#.##??????#???#???? 1,5,7,1
314?#??.??.?.?#? 3,1,1,1
315#?????#####???? 1,2,9
316??#???#?.#???#?????? 3,2,6,3
317#????##?.?##???? 1,1,4,3
318??..#.#??#. 1,1,4
319.?.?##?????????????? 1,8,4
320?##???????#?##?#. 4,1,6,1
321?#?#????#?##? 8,2
322????##????# 4,1,1
323????##..?#??????.??? 3,4,2,1
324???#?#.?????#?#?.? 4,1,1,4,1
325.#?#?????.??#?#??. 7,1,1,1
326?.????????.#.?.???? 8,1,1,1
327?????????##??? 1,7
328???.#??#???#?????? 1,8,3
329?#???????????????? 9,1,1
330?##?????????.???? 4,1,1,1,1
331??????#?#?## 1,1,1,4
332?????.#?#??#.?#? 5,6,2
333?#?#.?.??# 3,3
334????#???.?#?? 3,3
335.????#????#.?????. 6,2,1,1
336???.?#???.??.?. 1,4
337???#?.???.#??.?? 4,1,1,2
338??????#?.?.?#?#???? 4,5
339.?????????.#??#??. 1,1,2,1,2,1
340?#????#???#???????# 8,1,1,3
341??..#???#?????????? 1,3,9,1
342??#.???????? 1,1,1,2
343?????..??##?#???? 2,1,5,1
344???#?#???##??#? 1,1,1,4,1
345??#?.????? 4,1
346????.????????#?. 1,9
347?.??##???.??..???.?? 7,1,2,2
348.??.??????? 1,1,2
349??????#?#?? 8,1
350.??????##????? 2,5
351?#?.????.?? 2,1
352???#???#?? 4,2
353.???.?..###??####??? 1,1,10
354?#?????????? 4,2
355.??#?.??##? 2,3
356??####??.??????. 5,2
357?.?##?.?.???#? 1,3,5
358#?????.?##??.?? 1,4,3,1,1
359..?#??#?.????? 4,1
360?#????#?.?#?### 1,1,6
361??#..#??.? 2,3
362?#???##.??#???.# 6,5,1
363??#????#?? 3,1
364.??.????#????##??? 1,1,2,7
365????.#??.?.? 1,1,1,1
366.#?##?.???.?#????#?? 1,3,3,2,2
367..#..??#??.?##. 1,5,2
368?#.???????????.? 1,1,1,4,1
369.?##?????#?? 3,6
370??..????#.? 1,2,1
371????#??#?? 1,2,1
372???##??##.? 1,2,2
373??????#????.?? 1,3,2
374??.?????.??.. 2,3,1
375?..#?????????.???? 5,2,1
376#.?????#???#?????? 1,5,1,1,1
377?????#?.?.#??? 6,3
378????.#?.?.?.?###? 1,1,1,1,3
379????.?#???.??.???# 1,1,1,1,1,4
380.#???.????#??##????? 2,1,10
381?.?????#??? 1,6
382#??.?#..#???#?? 1,2,1,1,1
383???#.?????????##. 4,11
384???#.???#???.?.??? 4,2,1,1,2
385??#????#??????#??? 6,1,2,2
386?.#?#??????? 4,5
387.#.?.????? 1,1,1
388?##??#?????????..??? 3,7,1,1
389????????.?###??#???? 3,3,11
390??###??.??? 5,3
391????.???????##?#? 1,1,4,3,2
392??#.???.????? 1,1,2,1
393??#?????#.? 3,2
394??#??#???#????....?? 14,2
395???##??????##?#. 6,3,1
396..???????.??# 4,3
397??#?.?.?..???#? 1,2,1,3
398..?.????#?.? 1,1,1,2
399?????#?????????#? 2,2,7
400?#????.#??#? 2,1,2,1
401?#?#????.?..??#?#?? 6,6
402.??##.????.?#??#?#? 4,3,8
403?.#??.?.?. 1,1,1
404??#?.??????? 3,6
405.#?#?..???###????# 4,11
406???#.??#.#???# 3,3,1,1
407??????#?????? 1,1,8
408#..?????.?##?#??? 1,5,5
409##????.??.? 5,2
410??##.???????#? 1,2,2,4
411?#??.?.??#?. 2,1,1
412?????.??#?#????#??. 4,11
413??????...??.?#?? 2,1,3
414..?##?????????. 3,4
415.#??#???..#??.#?.?. 4,3,2,1
416??#???#????#?#?????? 1,1,5,3,1,1
417#??.???#.#????????? 1,1,1,6,1
418????##?????#???#.? 5,8
419??#???#?#???# 2,7
420??????#?#??? 3,1,1,1
421??????.#??##?.????? 2,2,5,2,1
422??#?#???#?#??#???.. 10,3
423????##??##.????.? 8,1
424.?#.??#??. 2,4
425#.???###??#???? 1,1,10
426???.#?#??..? 2,3,1
427.???#???..?.?.?? 7,1,1
428??????#???? 1,1,5
429?##???##???#????##?? 7,3,3
430??#????.?????#????? 1,2,1,1,6,1
431???????#.??.???#???? 1,6,1,1,1,3
432??????#??#.?.?? 9,1,2
433??#.???.#?##? 2,2,5
434.??##??????#???? 6,5
435.???###.???##??#. 6,1,3,1
436??.?.?????? 1,2
437??#??.?.#??????? 4,1,1,5
438?#????#.?????.??. 7,5,1
439?.??#??.?. 1,1,1
440??#???#????.?? 8,1
441#.???.????.???##?? 1,1,1,1,1,5
442.#?#?????????..?##.# 1,1,1,4,2,1
443?##.??.?.?#? 3,2,1,2
444#.??.?????# 1,6
445.?#?#??????##???? 5,3
446?.?#?????##? 4,3
447?.?.?.?##????????#? 1,12
448??.??..??###?. 2,1,4
449?..###????#?.?????? 9,1
450?????????##????#??# 14,2
451?...#?##?.????????.. 1,4,5,2
452.??????#?.? 1,4,1
453?..???###??.???.## 1,8,1,2
454????#?##?#??#????# 1,10,1,1
455??????#??##?#??.???. 9,3
456?..?#????#?.#?.#? 1,8,2,2
457???????.#? 4,1
458????##???.? 1,2,2
459.##?..#???.?? 3,4,1
460???.???????#???????? 1,1,3,3,1,2
461?????#??#??#??.???? 1,10,2
462..???.?#???.??????? 2,1,2,1,1,3
463???#????##??##?? 1,8,4
464???#??#???.?????? 9,3
465?????.??##?# 1,1,3,1
466??#??#???.????. 6,1,4
467???##???#?#?? 1,4,4
468??#??##??.????#? 6,5
469?#??#???##????#?? 5,5,1
470???#??#??? 4,1,1
471???##???###?.?..??? 5,5,1,1,1
472?#?.???.???? 1,1,1,1
473#????????. 1,4
474#?????.?????###? 3,1,3,5
475#???.?#???#??#.#???? 4,3,1,1,5
476??.??????#???#?.?? 2,1,1,1,1,2
477???#??#??#?? 5,1
478???.??...????##?.? 3,2,1,1,2,1
479?.???#?????#??? 1,4,1
480?.???#?..?? 1,3,1
481.?...???.##??? 1,2,2,1
482?????#?#.?.# 7,1,1
483?????#?????????#??.. 10,3
484??????.#???#.????#. 6,5,1,3
485??.?????.. 1,2
486?????????? 1,1,1
487#?#?.??.??.?##??# 3,2,5
488#???##??###.???.?.?? 11,3,1,1
489??#??#?##?..#?? 1,8,1,1
490.?????????#?? 1,1,2,2
491?.??#?#?#???#.?.?. 1,8,1,1,1
492?????#??##??## 1,11
493#.?????#???#..?##.? 1,9,3
494?.#???.?#?#?##?#???? 1,1,11
495.????#?#?.??#??##.# 6,7,1
496.?...??#??.??#??? 5,2
497?.?.??.??? 1,1,1
498????.?.#?#????.. 3,5
499?.?#?.?#??? 2,2,1
500.?????#??.?????#?. 2,4,6
501????#????????????#? 1,2,6,4
502#??#????.?.???. 8,2
503??.?#?##?#?# 1,6,1
504???#????????? 2,1,1,1
505.?#??..???. 3,3
506.???.?.?????? 1,1,1,1
507?????????#?. 1,2,2
508??.?#??.#??? 3,4
509???#??#??..? 1,1,2,1
510????#??##???.???.?? 9,2
511?#?#..#??#? 4,5
512???#???#??#?? 5,2,2
513#???##?##.#??????.? 3,2,2,4,1
514??#??#??#.?.#?##???? 1,4,1,1,7
515#??????.??. 1,3,1
516#???????.???..????. 8,1,1,1,1
517?#?.??#?.??#???#??? 1,1,1,2,4
518?##??.?.???# 3,1,1,1
519#??###.?????.? 6,2,1,1
520.#?.??#?.? 2,3,1
521..?#?????????.? 3,7
522??.???????#???#? 1,4,8
523???##?.????# 1,4,3
524.??#?##.#??????#. 2,2,1,3,1
525??#??.?#.?##. 5,2,3
526??####??.?.?##?.. 6,4
527??#????????#?.??# 11,2
528??..??..#? 1,1,2
529????##????.?..?.#.? 5,2,1,1
530?.?#?.#?.? 1,1,1
531?.?#?#?#?.?###?? 7,3
532?#??##?????# 6,2
533?#????????#. 3,2,1,1
534???##??#???#?.. 1,2,7
535??.??#????#? 1,8
536??#??..??? 2,1
537?#???????.??.#? 1,1,1,1,2
538.????#?????????????# 1,17
539????????.?? 1,2,1
540?.?##?#?#??.###?. 3,4,3
541????..???????? 3,1,1,1
542?#????.?.??? 3,1,1,2
543???????#????#?????? 2,2,1,1,4,2
544.??????.??.??? 3,2,3
545.?##??#?.?.#?.?##??. 2,2,2,3
546??#?#??#?? 3,2
547?#?.?.#?.?##?#?#? 3,1,1,8
548#?.#.?##?.???????? 1,1,4,1,6
549????????.????#??? 6,6
550???????#?#??#? 6,1
551.??.##??.??? 1,3,1
552??.????#?#???? 8,1
553?#?.?#????####????? 1,10
554?#..???#?????? 2,1,2,2
555.#?#?####??#?.#?#?. 12,3
556.?#?.?#.#?# 3,1,3
557.#??##?#?#?#???#???# 11,1,1,1,1
558.????##?#..??#?.? 8,3
559?..???.?#??#?#???. 1,3,6,1
560?##.?????? 3,2
561??#?????###?? 6,3
562?????????#???##?#?? 7,6,2
563#????##??##??#??.# 1,1,2,7,1
564???#???#????????? 4,8,1
565?.??.??.?? 1,1,2
566.??#??#?#?????????? 11,1
567.##?#?????# 5,1,2
568#???????.? 2,4,1
569??????.???#??? 1,1,3,2
570????????#?. 2,1,3
571????##??#??.### 1,8,3
572??.?#??###? 1,7
573?.?.?.??#??????.? 1,7
574#.??.???#? 1,2,1
575??.#????????? 1,4,1,1
576????????????.#?##??? 9,5
577#?#??.??.#.? 1,2,1,1
578??###????.????#???? 9,6
579???#?????????#?????? 7,4,1
580#?.??.?????#. 1,2,3
581#??????.?? 5,1,1
582?.?#?#?.?#.?.? 1,4,1,1
583??.?###?#??#????#? 1,11,2
584??.?????.# 1,1,1
585???.??#?#?.?????#?#? 1,1,1,1,7
586?.??.????#?#??? 1,8
587#?..???.???. 2,2,1,1
588#???#??#.?.???? 8,3
589?.???????.??#???. 5,6
590??##?..?.? 5,1,1
591..?#?.?##??##????## 1,8,3
592?????.?.#??##. 2,5
593?#?###..???##????#? 6,5,3
594?#???????? 1,1,3
595?.?.?.?#?. 1,1,2
596???.?.?.??#??.??? 1,3
597??.??#???#??#. 2,3,5
598??.?#??????.#?.?#.? 2,1,1,3,1,2
599#????#??#????. 1,1,7,1
600?#?##.?#??????????# 4,2,4,2,1
601???.#?????##?###??? 1,1,13
602.?#??#?.??#??. 6,2
603##??##?..?#??#??. 6,7
604#?.?.?????? 1,4
605.?.#??.?#? 1,1,1
606??#?.#?#?????.. 3,1,3,1
607???#.?.?.?##??#?.? 1,1,1,3,1,1
608?????#??#? 1,1,2
609??##.????. 2,1,2
610..##???#?? 2,4
611####??#?#??#?#?. 4,1,7
612?##?##????#??? 5,4
613???#??????#?#?. 6,7
614????.?#??#?#.?#??# 1,1,2,3,2,1
615????.#????#? 1,1,1,2
616?.##...?.????? 2,3
617.???#.??#?##?????##. 1,1,1,6,4
618..?#????????##?. 5,6
619?.#?.#??#? 1,5
620.?????.???##??###?. 1,1,11
621?.#??#?.?.???#? 1,5,1,1,1
622?#??#????.?? 1,1,1,1
623????.?#?????##? 4,1,6
624???.??#.#? 3,1
625??.#??...?.???..? 3,1,2
626???????#??#?#?#?? 4,6
627??#?#??#?#?##?.?? 7,4
628?##??.??#? 3,1,1
629?#.?.#?????##??#? 2,1,6,3
630#.#????#??#?????? 1,1,1,6,1
631??????#??..??????? 2,1
632????#?#?..??#??.#. 1,6,1,1,1,1
633?#?????.?.?????.##. 5,1,1,1,1,2
634??#?#?#????#?#?????? 15,1
635.??????.#?? 1,1,1
636??????.?????##?.??. 2,5
637???#?#..#?#. 3,1,3
638.?#??..#?##??. 4,6
639???##??.??#?.?????.? 6,3,5
640????????????###???? 4,10
641?????.#?.?# 4,2,1
642??????.##? 2,1,2
643.???.???.? 1,1
644.??#??#???????#.. 7,2
645.?????#??.??????? 8,2,1
646?.####?##?? 7,1
647..????.???? 2,1,1
648??.????????? 1,2,2,3
649?.?..?????????? 1,1,3,2
650?#??????#.#.?#? 5,1,1,1
651??.?.?#???# 1,1,3
652?????#.?#?????#?.? 4,8
653?#??##?????.?? 2,2,2
654?#..?????..?????#?? 2,4,2,1,1,1
655.??.??#??#?? 2,5
656?????..#..??##. 3,1,3
657??##???#?#?.?#???.?? 1,6,2,1,1,1
658???#?????#??. 5,1
659.????#?#??????? 7,1,3
660???#???##.##??.?? 5,2,3,1
661.???#?#?#?#??????# 13,2
662?#?????????##??? 1,2,3,3,2
663??????.?.???### 1,1,1,1,6
664.?.????#?#...??#?#? 1,6,1,3
665????#??????? 1,4,1
666???.??#??.? 1,2,1
667.?#??#???.#??# 7,4
668??#.?..?##?.?..? 1,4
669???.??.#???????? 3,1,1
670..?????#?.?.???? 5,3
671????###??????#????? 7,10
672##??#?#..#?????#?#?? 7,11
673????.?#?#???#???#? 2,11
674?????#?#?#????#??. 1,9,1,1
675.#.?.#??#??#?#?? 1,1,9
676???#????.?..?????.. 1,3,1,1,1,2
677?????????#?#?.? 1,1,5,1
678??#?.??.????..??. 4,1,4,1
679.#?#??##???#?# 1,11
680.??#??##??#????# 11,2
681.?..#??#??.????# 1,1,1,1,3
682?#?#????..???. 6,2
683?.????????#?##????? 1,2,6,2,3
684???..????? 2,1
685?#???##???#?#?.? 1,8
686???????.?#?#?? 4,3
687??#.??.?#??#?? 1,1,5
688??#..#???.???????. 1,1,1,1,1,4
689??.???.?#??#???. 1,2,6
690?????.?#?.## 3,2,2
691.?#??????.??.? 6,1
692..????#?###???????# 1,14
693??#????#?. 4,1
694????????.??# 1,1,2
695..?.??????????#??#. 1,2,1,1,6
696?.?#????.?#????#.? 1,5,6,1
697.?..????#???.??.?.? 6,2
698?.#???#..#????#??? 1,1,1,6
699.??.?.#??????#??? 1,1,1,3,4
700?#####???.?#?? 7,2
701??.????#?#.????? 1,6,2
702????.??##?? 1,5
703#???#?#?.#???..##? 1,1,1,2,4,3
704?#?#??.#?? 1,2,3
705????????.???? 8,1
706.#????#??#. 1,6
707?????..???#?#????.? 2,1,10
708???????????#??.# 2,1,7,1
709???#???.??#??##??.?? 4,8,1
710??#????????? 3,1,2
711#?.?#????##?????? 1,3,9
712.????###?....#?. 7,1
713#?#?####??#?#.? 9,1,1
714.??#??#?###?????? 3,6,1
715???#??####????????#. 2,7,1,1,1
716????.#??#??.???? 2,1,4,1,1
717?.?.?#?..#? 1,1,2
718.#?.?#???? 2,4
719???.#????#??.?# 1,1,1,3,1
720#??#????#???..# 1,3,1,4,1
721###.??.##???#??????? 3,1,2,10
722????#?###???? 1,7
723?#?#.?#????. 3,2,1
724.???####??# 1,5,1
725.?#??#??.#?? 2,4,3
726???..#?#?#??#??.. 1,10
727#??.###...#.?#??## 1,3,1,5
728???#?.??#???# 3,5
729?#??.?#?#.??. 1,1,3,1
730???#???.????#?????? 1,4,5,3
731.#.#???.??##?#???# 1,1,1,2,2,1
732?.???????????# 3,6
733??...##.?.?? 1,2,1,1
734?#??..#??#?.???#. 1,1,2,1,4
735???.???#??. 1,4
736????##?????? 7,3
737###.#???##.#?#??.? 3,6,3,1
738??????????? 2,3
739????#.??#? 5,3
740???..????#????##??#? 2,1,1,10
741??..#.?????? 2,1,3,1
742#?????????.?????. 3,1,3,2,1
743??.#?#????#??#???? 4,5
744????#..??.?#??#? 1,2,1,2,2
745?.????????????? 1,8,1
746#???#?..????#?#?? 1,1,2,8
747.#???###???????#?? 2,11,1
748??????.?????##? 3,1,8
749?.#???.#?. 2,1,2
750???.##???#. 1,2,1
751?#?.?#???#? 2,1,3
752???.?#?###..?? 1,5,1
753????????#?.#? 1,7,1
754#??.#?????#. 2,2,4
755??????.???# 5,1,1
756#.???.??????? 1,2,1,1
757????#?????#? 1,5,3
758.?#????#.?? 1,1,2
759?.#?#??.???#?#? 1,1,1,1,6
760?#.????????#???#???? 1,1,3,4,1,1
761???#????##?????.##.? 1,2,6,1,2
762????#?#.?????.. 5,1
763.???????.??## 1,1,2,4
764.?.?##?#?.?? 4,1
765#????????.?#?#?.?. 1,2,1,2,1,1
766?.???????.# 1,5,1
767??.??###?##?.?? 1,7,1
768??????..?.?? 1,1,1
769.?.#.#??.??.??? 1,1,3,1,1
770??#???#???#?#??.?# 1,1,6,1
771??.?#?#?#??# 7,1
772.?..?.#???#??#????. 1,12
773?????.##?? 3,4
774?????????? 1,2
775#?.#??????????#?? 1,1,12
776??????????????????? 1,8,1,4
777????#???????????.??? 1,1,6,2,1,1
778?.#???#????.??.? 6,1,1,1
779??#???##?????#?## 3,3,1,5
780??????????????.?# 1,4,1,2,2
781?..??#???????? 1,11
782?.#??.?.??? 1,1,2
783?#??#####???#???.??? 16,1
784?#????????????.??? 6,4,3
785?.???##???###? 4,4
786?.?.?????#???? 1,10
787??#?..?... 1,2,1
788.###?.?#?????? 3,4
789??#.???#.?###??? 1,1,4,4,1
790?????.##????#.?????# 3,7,2,2
791?????###?.?? 3,5,1
792???????#????#.?.???# 1,1,9,1,3
793#??.?????.##?.?# 3,3,3,2
794?.?.??#?.? 1,1,1
795?#??#??##?#??????#?? 1,7,1,1,1
796?????#.?#?????#.#?#? 1,3,8,4
797#?.??.#???????#???#? 1,1,1,1,2,6
798.#?.#?.?#.????? 2,1,2,3
799??..?#???.???? 1,3,1
800##???.?#?#. 3,3
801.??#???..?? 2,1,1
802..#??..#?. 2,1
803?#??#?#?????..?# 2,3,1,1,2
804?????#.#??? 3,1,4
805??????.?.#??##?.?? 4,5
806???#?????#?.?##.?? 1,3,1,2,3,1
807???#?.??..?# 1,1,1,1
808.#??.?.?????.?.??#?? 3,3,1,5
809#?#????#????..#? 4,5,1
810????.???????##?? 1,1,7
811?????????#????????# 1,1,1,7,2,1
812..??#??##??.. 3,4
813???????.?.#?.#.? 6,1,1,1,1
814.???##.#.#??# 1,3,1,4
815.??..??.?..?#?#? 1,2,1,3
816???..#?.??##??? 1,2,4
817?...??#??#???. 6,1
818.???#??..???.???#??? 3,2,5
819??????..?.???#??? 1,1,1,1,5
820#???.?..?.??? 4,1,2
821#???#??.?.???? 1,3,1,3
822??????????.?.?# 7,1,1,1
823?##???.#???????#?... 5,10
824???.???##?????#? 1,1,4,1,1
825?.????.???? 4,2
826?.????##??.??? 1,5
827????.?#??????##?### 1,2,9
828?????#?.?????#?? 5,1,4
829.?.#?.#?#?.???## 1,2,4,5
830##??#??##?? 2,7
831??#?###???#???? 7,5
832?#???#?#.???????# 3,1,1,6,1
833?#?.??????#?????? 3,2,7
834????????????....?? 9,1,1
835#?.?#?##??## 1,9
836????#??###????.?? 1,9,1
837??#???????..?? 8,1
838?.?#?????#?.? 2,4
839??.?.#?.?#?#??#??..? 1,1,1,9,1
840??#???????? 4,1
841??????????#??.???# 3,6,1,1,2
842?????.???? 1,1,2
843??#????.#????##??.? 1,1,1,8,1
844?..#.#...? 1,1,1
845?#?##??#?.????##???# 8,1,4,1
846#????#?#?.#??#???? 1,1,5,1,1,2
847#?#????.???#.? 1,2,1,2
848??????????..? 1,2,4,1
849.?##??.?????..??.? 2,4
850#??#??????.?.##?.??? 8,1,2,2
851#?.???#.##???###?# 2,2,1,2,6
852##?#??????..? 4,1,1
853?#????????#.#.??.?? 1,1,5,1,1,1
854#????.?#....?. 5,2,1
855.?#?#???#??? 6,1
856?????#??#??? 1,4,4
857.??????.????? 3,2
858???#.??????. 1,1,1,3
859.????#??#???###???? 1,4,4,2
860.?##.#????.?# 3,1,1,1
861?????#?#??#? 1,9
862.???????????.##? 4,2,2
863..???#??.?##?#??###? 6,4,3
864??#????#.???#?#?##?? 6,1,1,8
865..??#?????????? 1,3
866?.?#???????? 4,2,1
867.?.?#??.#?..?#?#?? 1,4,1,5
868??????.#????.#?.? 3,4,2,1
869??#??#??.###?. 5,3
870..?..??#?#??#??. 1,8
871..??..?#???#??.? 2,3,3
872??.#???###??.???. 1,3,4,1
873??????#?##????#??#?? 11,2
874?#?.???##?.#??#? 3,6,2,1
875.#?####?.#?#?# 6,1,3
876?#.?.????? 1,1,3
877??#??#?...???? 5,2
878?.?##??##????.? 1,11
879?##?????#??#.?? 11,2
880??.???#..?#?#???? 1,1,2,2,5
881?##??#???##?????#. 2,2,7,1
882??#????##?.?. 3,4
883??.??#.??.???#?#?? 2,1,1,1,1,6
884???#..?#?. 2,1,1
885??????####??###???# 1,12,3
886????#?##??#.##? 1,1,4,1,2
887#.??#??##??#?..?.?# 1,9,1,1
888?#???????.??.#?????? 1,2,1,1,7
889????.#?????????##? 2,2,7
890???.###???#?#?# 1,3,5
891???#..???##????? 2,2,2,1,2
892.??#???#.. 1,1,1
893#?????#????? 1,1,2,1
894?.????..?????#? 1,3,3,1
895?.???.?#????#??#.#?# 2,9,3
896?##.??.##.??.??? 2,2
897???#???.?? 2,1,1
898?????.?..??#?? 1,1
899.???????#..???# 2,2,2
900?????##??##? 1,7
901???#????##????. 1,2,6
902.#?.??.??? 1,1,2
903??????.??#?? 1,1,4
904#.?????????????##?? 1,2,10
905.??????##??.?###??? 7,4
906.??##??#??#.?????? 4,4,1,1,1
907#??????.?? 1,3,2
908??##???#?????#?. 4,2,5
909???????..??? 4,3
910??#??#??#?? 1,1,2
911???.????#?? 2,5,1
912??##?????.?. 4,2
913????#??#?.#? 4,2,2
914?????#??.??. 2,3,1
915?.?#?#?#??#???#???.? 13,1
916#??#?#??#??.????? 11,2,1
917?????#??.? 1,4
918?????#..??????#????? 2,2,6,1,1
919??#?.?.??????? 4,1,2
920?#?????#??????#???? 1,1,4,3,3
921?????##.??.??##?? 4,4
922.##?.?.#?#?.?#??#??. 3,1,4,6
923#???#.#?#?.???#??? 1,3,4,1,4
924???.??##?#?#?? 1,9
925.#?????.?.?????## 6,1,1,1,3
926#?#?????##.#?#??? 1,8,1,1,1
927?..#??.?????? 3,1
928.#?##??????. 1,4,2
929?.???????. 1,2
930????..??.????. 3,1,3
931#.?##???#????.??.? 1,4,1,2,2,1
932??.??.??#????.??? 1,1,5,2
933?.??#?.#?. 2,2
934??##??.#.??.????? 5,1,2,1,2
935#?.?.#??#???#.?.?? 2,1,1,2,2
936??#?.?#?.??????? 3,2,3
937##?##????????#?. 6,5
938?.???#?????.??? 1,5,1,2
939????#???.???#?#?.? 6,1,5,1
940??#???#.??#?????##? 5,1,10
941????.?#??#?????? 1,1,5,1,1
942??????####???? 1,8
943?.????..?? 1,3,1
944??.??##??###?..? 4,5
945???#????????? 4,3
946.#???.??#. 4,2
947????#?.#?????##??? 1,1,1,1,5
948?.???.??#??.???? 1,2,3,1,1
949.?#?.??##.?? 3,4
950??.#.??#.? 1,3,1
951???????#..?? 7,2
952???????##???.??????? 8,5
953?##?##?????.?#?# 7,1,1,1,1
954?.??..?.?.?. 1,1,1,1
955??????#??.??? 2,4,1
956..???#?.##?# 2,2,4
957???#???#.??????#?#. 8,1,3
958.###????.????. 6,2
959????###??#???????? 7,5,3
960.#????.???#???????? 5,1,3,3
961.???#?#??#?. 1,7
962????????#???#..#?? 11,1
963#??#.??.#?#?.?? 4,1,1,1,1
964???????????????? 6,2
965??.#?????. 2,6
966?##????#??##? 2,1,2,2
967?.#.??##??????#??? 1,4,7
968#??.#?????? 2,1,3
969??##.???#?? 3,2,1
970??#???????..??#. 2,4,3
971?..?#.???#???? 2,1,2,1
972??.?#??.??#?..??.# 1,1,1,2,2,1
973#..???#??? 1,6
974?????.?.??.??#?????. 2,1,1,1,3,4
975?????????.#? 3,1,1
976??#????#?..#.???.??? 3,5,1,1,1,1
977???.?#..???#?? 1,2,5
978??#??#??#?.#?# 7,3
979??#????????#????#??? 1,11,1,1
980??#.???????#? 2,4,1
981??.?????????# 5,1
982.?#?##??#?.#?????? 5,1,1,1,1
983??????###??# 1,1,5,1
984..????#?.??.??? 5,1,1
985???.????### 1,4
986???...?#???###???#?? 1,14
987????????????#??.#? 1,7,1,1,1,1
988????##??.???..#. 1,5,1,1,1
989..##??.??##?? 4,6
990????#?##???.?? 2,5,1
991#??..?#???????????? 2,2,6,2
992.?#???#??????? 2,7
993??.#.#..????###.? 1,1,1,7,1
994.??#.???###.?? 3,4,2
995??????#?#.??? 4,3,2
996????#?..???##.? 2,2,1,2,1
997.?????#?#?? 2,4
998#??.????#? 2,4
999???..#???#??? 2,7
1000..????????##. 1,3

Generated with cgit - Back to sebastiano.tronto.net