Skip to content

Commit ab80754

Browse files
committedDec 3, 2020
Add dy 3
1 parent 542974e commit ab80754

File tree

6 files changed

+390
-1
lines changed

6 files changed

+390
-1
lines changed
 

‎Day2_input.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -997,4 +997,4 @@
997997
16-17 d: dddddddddddddddlp
998998
2-5 q: bbwqqbkmdhqmjhn
999999
7-10 m: qmpgmmsmmmmkmmkj
1000-
4-7 g: vczggdgbgxgg
1000+
4-7 g: vczggdgbgxgg

‎Day3_input.txt

+323
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,323 @@
1+
........#....#..##..#...#.....#
2+
...............#....##........#
3+
.#....##...##..#...............
4+
.#.......#......#.##..##...#...
5+
.....#.#....#..##...#.....#....
6+
...#.#..##...###......#..#..#.#
7+
.....#..##........#.##......#..
8+
..##.....###.........##........
9+
..............##..#.#.#.#......
10+
.#....##..#.##.#....#..#.#..#..
11+
.#.#....#.##.#...#....#.....#..
12+
..#...#.#.....#....#.......##..
13+
.#.#..##.....#...........#.....
14+
.#.##...#.....#......#.##......
15+
..#..#..........#.....#..###.#.
16+
##....##....#.#...........#..#.
17+
.....#.#.......#.#.#..#.##....#
18+
...##.#....#..#.....#.........#
19+
.....#........#.##...#.........
20+
.....#................#.#...#..
21+
...#....##.....##....#.......#.
22+
....##.#.....#.#.......#.......
23+
#...............#..#...........
24+
.......###.#.......#.##....#.#.
25+
..#........###........#......#.
26+
.#.......#...##.....####....##.
27+
..##.#....#.....#..#....#......
28+
..#...#..#.#..##...#.....#.....
29+
.#.......###.......#....#......
30+
...#...#.......#........#...#.#
31+
..#....#...#.......#.#..##.....
32+
##............#.#..#..........#
33+
.......###...##..#.....#....#..
34+
##..######.#..#.......###....##
35+
###..#...#.##......##....#...#.
36+
..............##.###..........#
37+
.....#........##.#.###....#....
38+
..#...#.....##.#......#.#..#.#.
39+
#....#.............#.#.........
40+
.........##.#........#...#.....
41+
..........#..##.#.#.....#..##..
42+
........##......#..#..#...#.#..
43+
.##.......#..#.#...#.####..#...
44+
##...#........#.###...##....#..
45+
....###.####...#..#..#......###
46+
#....#....#.#.....##.........#.
47+
#.......#....#....##...........
48+
##...##.#.......#....#...#....#
49+
....#....#........##..#.#..#.#.
50+
..##.....##...#..........#...#.
51+
.#.#.#...#.....##..#........#..
52+
#....#.....#..........#....#...
53+
...##.#.......#.#.........#....
54+
##.##.........##.....##.....##.
55+
##.#..##..#...##........##.....
56+
.........##.......#....#...#...
57+
.#.....#........####.#.#.....#.
58+
...........##..#.###...........
59+
..#....##....#...#.............
60+
#.#............#.......#.......
61+
.##........#...#..##.....#.#...
62+
#.##..............##..##.......
63+
##.........#......#......#..#..
64+
##.#....#...#....##....#..#.##.
65+
......#...#..#.#...#.#....#.##.
66+
##.......#.....#.........#.....
67+
...##...#................#.#...
68+
....#.####...#.#.....##....##.#
69+
#...#..#.#.##................##
70+
.........##.....##...#..#......
71+
......####....#.##.#.....#.....
72+
...#..#.#....#.#.#..#..........
73+
.....#........##...#.##....#.#.
74+
..##......#...................#
75+
.....#..#...............#..#...
76+
....#........#..#.#...##...#.##
77+
..#.#.......#.##.........#...#.
78+
...##......#.#.................
79+
.#....#...#.............##.#...
80+
........#.##...#..#...###.....#
81+
#....#.#........##....#......##
82+
.###.......#..#..........#..#..
83+
#....#..#....#........#...#...#
84+
##.#.###.##.#...##.#......#.#.#
85+
#..#..#..##........#..###.#...#
86+
....#..#..#.....#...##....#...#
87+
.......##.......#..#.##...##..#
88+
.##....#..###................##
89+
#...#.##.##...#.##......##.....
90+
...##.....##..##...#..#........
91+
...............##.....##.......
92+
.#..#.#..#....#.....#..#...#...
93+
.#....#..#........#.#...#.....#
94+
##.....####..#......#..........
95+
........#.........#.........#..
96+
#...####....#.##...#....#...##.
97+
.#....####..#...##..#......####
98+
...........##.##..#.##...##....
99+
..#..#.......#.##....#.#...#.##
100+
#...........#..#...............
101+
.......#.##..#.....##......#...
102+
....##.#.##.....#...........#.#
103+
.............#.##..#...#......#
104+
#......#...........#........#..
105+
#.#..#.............#...#.......
106+
#.........##...#....#...##.....
107+
##...#..#..#..#....#...........
108+
.#.....#........#.....#.##..#.#
109+
...#..............##.####.#..#.
110+
##.....#..#.#..#..##...........
111+
...#...#.......#...............
112+
..#..................###..#..##
113+
....###..........#.#..#...#.#.#
114+
..#..#..#.#..........#.#......#
115+
....#....#.#...#.###...##..#...
116+
....#.......#...#....##........
117+
.#.....#.......###....#........
118+
....#..#..#.....#......#.......
119+
......#...#..#....#.#.......#..
120+
.##.#..#...#.#.#...........#...
121+
..#....##.#....#.#....#...#.#.#
122+
...##..#.......#....#.#.....##.
123+
##.#......#.#.......##...#.....
124+
......#...#.##..............#..
125+
.##.........#......##.#..#....#
126+
#.......#.....#...##...#..#...#
127+
..#..##.......#......#......##.
128+
#..##...###.#.#...........#....
129+
##......#.....####..#..#....#.#
130+
.......##...##.#...#...........
131+
....#..#.##.#.....#.#....#.#...
132+
....#.....#.....####...#..#.##.
133+
.##..#..#..###...#....#.##.#.#.
134+
..#.#.##..........##...........
135+
#.##.#.#....#.##....#..#...##.#
136+
#...#....#...###....#.......#..
137+
.......#..#............#.......
138+
................##.#.#.....#..#
139+
..........................#....
140+
.##....##...#.#....####..#....#
141+
......#...#....#...#.##..###.#.
142+
.........#............#.......#
143+
.#.#..#........#..#.........#..
144+
#..#...#......#.#....#..#.#....
145+
...........#.................#.
146+
.#.#..#...##..###......##....##
147+
.#.#.##......####.........##...
148+
..#....#.#..#................#.
149+
##.......#....#.........##.#.#.
150+
##..#.###...........#..#.#..#.#
151+
...#............##.#....#......
152+
...#................##.#..#....
153+
....#..##.#...#.#.....#.......#
154+
......#......#.#........#..##..
155+
...##...#.....#.##.......#.....
156+
##...#...#.............#..#....
157+
..#...##.....#..........#..#.##
158+
#.##...#..................#.###
159+
.........#..........#.###...#.#
160+
#..#.....#.#.#....#......#...#.
161+
.............#.##..###.....#.##
162+
..#..#.....#..#.............#..
163+
.#.....##.#.#..#.........#.....
164+
..#.......#....#.....##.#......
165+
.#.........#..#....##...#.##...
166+
.##..##................###....#
167+
.#..##..............#...#......
168+
.#..............#.##....##.....
169+
.#......#..#..##..#...###.....#
170+
................##...#.#..#...#
171+
##.#.......#...................
172+
....#.#.......#..#.##..........
173+
....###............##...#......
174+
.......#....#.#.....##.#.....#.
175+
....#...............#.#........
176+
..#.##....#.#.#......##..#.....
177+
.##......#...#.#..#..#.......#.
178+
....#...#........#.#..##.......
179+
.##...###.#....#..........##..#
180+
..#.......##..#.....###......#.
181+
...#.#..##.#.#...........#.....
182+
##........#.#..##.........#..#.
183+
.....###.......#..#.#.....##.#.
184+
..#...##.#..............#......
185+
......#...#...............##.#.
186+
##...#..#....#...#.####.##.....
187+
...#............#.##...........
188+
...#........##.#.##.......#....
189+
...#..#..##....#...#......#..#.
190+
#.....#..#......#.#.....##.#.#.
191+
.....#.##......#...#..#..###..#
192+
...........##..##.#.#..........
193+
...#........##........##..##.#.
194+
......###...#.....#..###.#..#..
195+
#.....#.#....#...##....##.....#
196+
.##....#......#.....#.#..##.##.
197+
##....###.......#...##.......##
198+
...##......#....###............
199+
..#...#...#.#..#..........##.#.
200+
#.#.###...#..#.....#....#.###..
201+
..##.....#.#.#.......#.........
202+
...####..#....#..#.........#...
203+
.##...........#.##.#...#.#.##..
204+
...#.#....#.##......#........#.
205+
##....##....#..#...#..#.#......
206+
#......#..#...#...#.#.#.#.####.
207+
....##.#.#.....#.###........#..
208+
....##..#.#.#.#....#....#.#..#.
209+
..#.###..#............##..#.#..
210+
...#...#..#...#.#.#.....#.....#
211+
..........#.....#..#.......##.#
212+
..............##...........#...
213+
.......#.....#...#.....#.....#.
214+
.#.###.....##......##....#...#.
215+
.....#.........#.#....#........
216+
..#.#....#.##...#.##....##...#.
217+
...#......#.#.....#.......###..
218+
#.##....##.....#.#.#...#......#
219+
#..#...#..........#.........##.
220+
....#.#.#.#.....#...###........
221+
#.#..#...#......#...#.##...####
222+
.#...#......#....##...#........
223+
..#.........#............#...#.
224+
##......#..#...#....#.##....#..
225+
.#...##..#..##.#.#.#........#.#
226+
.##.........###...#......#..###
227+
...##.....##..#.#.........#....
228+
...........##........#...#.....
229+
..##..#...#..#..#.....#......#.
230+
..#..#.#....#.....#..#.##...#..
231+
#....#........##..........#.###
232+
......#...#...#....#...##.#....
233+
...#......#.#.....##......##...
234+
#....#..##............#....#.#.
235+
...#...##.#..........##........
236+
......#.###......#...#.#.......
237+
..................#.##..#..#..#
238+
....#.....#...#.....#...#....#.
239+
.#....##.#..#..#.....###.##...#
240+
#.......#..#....##.##.#.....##.
241+
..##........##...#.....#....##.
242+
#.........#...........##.#.....
243+
.#....#.#...##..###..........#.
244+
....##..##....####...#......#..
245+
##.##..#..#....#....####...#...
246+
..#...............#.##.........
247+
...#.#....#..#....#......#.....
248+
.#..#...#........#...#.....##..
249+
#.....###.......#.....#........
250+
...#.##..#.......#....#........
251+
....##..###.##...#.#....#.#....
252+
#.####...#.......#.....#.#....#
253+
#.......#......#.......#.#.#...
254+
##....#......#..#...#..#..####.
255+
.##.....#........#..#...#......
256+
#.#.#....#....#...#.##..##.....
257+
....#..#.........###.##.##.....
258+
...##...##.###..#..##.....#.###
259+
..###.......................#..
260+
......##..#.#.........#......#.
261+
.###......##....#.....#.......#
262+
.....#..#..##........#......##.
263+
..##.....#....#.#.............#
264+
..##.........##.#..#.........##
265+
......#......#.#......#........
266+
.#...#..#......##...#..#....#..
267+
...............###............#
268+
#.####.#....#...#...........#.#
269+
............................#.#
270+
.#..#...#.#.#.###..##.....##...
271+
....##...#.................##..
272+
......##....#...............##.
273+
.#......#.##.#..#.....##...##..
274+
.............#........#......#.
275+
#..........#.#....#####.#...#.#
276+
.#.#...##..#.#...#.#..#.#..#...
277+
#.##.......##......#.#.#....#..
278+
##.....##.#.#.##..........##..#
279+
....##..#.#.......#....#.##....
280+
..#.#.#...#.....#.......#......
281+
.#....#..#...........###.......
282+
#.#...#.....#......#...#.....#.
283+
#........#.#..........#...#.#..
284+
...#...#....#.........#........
285+
.....................#..##.....
286+
...#......##........#.##.#.#.##
287+
.............###...#.#...#..#..
288+
.#..##........##....#...###..##
289+
.#..#.#...............#.....##.
290+
...........##.#....#..##.#....#
291+
.##.#.#..#.#..#...#.#.#..#.#.##
292+
.......#.#..#..#..#..#...#.....
293+
.#......##............#.#..#...
294+
..#...#..##..#..#...##......#..
295+
...##......##....#............#
296+
.......#.....##...##.#...#..#..
297+
......#.......#..##.........#..
298+
..#...#.#.....#.#.......#.#...#
299+
.#......##.##.#.#.#.##..#....##
300+
#.....#.........#.#....#....##.
301+
.......#.........#....#..#.#.##
302+
.....##....#..#.#.#...#.....##.
303+
#####.#.......######......#....
304+
..##.#.......#.#..............#
305+
..#.##....#.....#...#.#...##...
306+
.....#...#..#....#.#..#........
307+
.#....#.#..#.#.#.##..#.......#.
308+
....#..#..#..........##...#....
309+
.......#.#......#........#.....
310+
##.#.#.###....##.#..#..#....#..
311+
#.##......#..#.......#.#...#...
312+
..##...#.......#.......#...#...
313+
........##.........#.#....#.#..
314+
..#...#..##.#.#.#...#....#.....
315+
.###......#........#....#...#..
316+
.#.......##......###..##.......
317+
#....#.#....#.##.........####..
318+
......#..........#..##.....#...
319+
.............#......#..##.#....
320+
...................#....#...#..
321+
.#..........#...#.#..##...#....
322+
.....#...#..........##.##......
323+
#...#..#.##........#...#.......

‎day3a/Cargo.toml

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[package]
2+
name = "day3a"
3+
version = "0.1.0"
4+
authors = ["Linus Kardell <linus.kardell@gmail.com>"]
5+
edition = "2018"
6+
7+
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
8+
9+
[dependencies]

‎day3a/src/main.rs

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
use std::io;
2+
use std::io::Read;
3+
4+
fn main() {
5+
let mut input = String::new();
6+
io::stdin().read_to_string(&mut input).unwrap();
7+
let map: Vec<Vec<char>> = input.lines().map(|x| {
8+
x.chars().collect()
9+
}).collect();
10+
let mut x = 0;
11+
let mut count = 0;
12+
for i in 0..map.len() {
13+
if map[i][x] == '#' {
14+
count += 1;
15+
}
16+
x = (x + 3) % map[0].len();
17+
}
18+
println!("{}", count);
19+
}

‎day3b/Cargo.toml

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[package]
2+
name = "day3b"
3+
version = "0.1.0"
4+
authors = ["Linus Kardell <linus.kardell@gmail.com>"]
5+
edition = "2018"
6+
7+
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
8+
9+
[dependencies]

‎day3b/src/main.rs

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
use std::io;
2+
use std::io::Read;
3+
4+
fn main() {
5+
let mut input = String::new();
6+
io::stdin().read_to_string(&mut input).unwrap();
7+
let map: Vec<Vec<char>> = input.lines().map(|x| {
8+
x.chars().collect()
9+
}).collect();
10+
let mut product = 1u64;
11+
for (diff_x, diff_y) in &[
12+
(1, 1),
13+
(3, 1),
14+
(5, 1),
15+
(7, 1),
16+
(1, 2),
17+
] {
18+
let mut x = 0;
19+
let mut count = 0;
20+
for i in (0..map.len()).step_by(*diff_y) {
21+
if map[i][x] == '#' {
22+
count += 1;
23+
}
24+
x = (x + diff_x) % map[0].len();
25+
}
26+
product *= count;
27+
}
28+
println!("{}", product);
29+
}

0 commit comments

Comments
 (0)
Please sign in to comment.