Advent 2016 Day 2 Part 1
This commit is contained in:
parent
93b6ec8cc9
commit
d7b5a2ffaa
6 changed files with 43 additions and 2 deletions
5
advent_of_code_2016/src/day2/input.txt
Normal file
5
advent_of_code_2016/src/day2/input.txt
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
UUURRRRULRDLRDRRDURDDDLLDLLLULDUDDLDLULUURULRLDLRRLLLRRDRRLDDLLULUDUDDLRDRDUURDLURUURLRULLDDURULRRURDUURLULUUUURDDDDUUDLULRULLLRLLRRRURDLLRLLRRRUURULRDRUUDDDDDLLLRURRURRUURDUURDDRDLULRRLLLDRRRLURRLLURLDRRDDLDLRRLLRDRLLLLDLULDLRRDRRLDDURLULLUDLUDRRDRRLRLULURDRLRLUUUDLRLDLLLURDUDULULDDRUUURLLLDLLDDUDDRURURUDDLUULRDRRRRLDRDDURLUDURDULLDLUDLULDRLRLLRLLLLRURDURLLDRRDRLRUUUUULLLRUDURUDLLLUDLLLLRDLDRDUDRURLUDDUDDURLUUUUDDLLUDLULLLLLDUDLLRLRRDDDULULRLDRLLULDLUDLLURULRDDUURULRDLDLDLRL
|
||||
URUUURDULUDLUUUUDDRRRDRRRLDUDLRDRRDRDDLRUULDLLDUDULLLRLDRDRRLDLDLUUDRUULDUDULDUDURURDDURULDLURULRLULDUDDUULDLLLDDURDDRDDURUULUUDRLDDULDRRRRDURRUDLLLURDDDLRULLRDDRDDDDLUUDRDUULRRRRURULDDDLDDRDRRUDRRURUDRDDLDRRRLLURURUULUUDRDULLDRLRDRRDDURDUDLDRLUDRURDURURULDUUURDUULRRRRRUDLLULDDDRLULDDULUDRRRDDRUDRRDLDLRUULLLLRRDRRLUDRUULRDUDRDRRRDDRLLRUUDRLLLUDUDLULUUDULDRRRRDDRURULDULLURDLLLDUUDLLUDRLDURRRLDDDURUDUDURRULDD
|
||||
LRUDDULLLULRLUDUDUDRLLUUUULLUDLUUUUDULLUURDLLRDUDLRUDRUDDURURRURUDLLLRLDLUDRRRRRRDLUURLRDDDULRRUDRULRDRDDUULRDDLDULDRRRDDLURRURLLLRURDULLRUUUDDUDUURLRLDDUURLRDRRLURLDRLLUUURDRUUDUUUDRLURUUUDLDRRLRLLRRUURULLLRLLDLLLDULDDLDULDLDDRUDURDDURDUDURDLLLRRDDLULLLUDURLUDDLDLUUDRDRUDUUDLLDDLLLLDRDULRDLDULLRUDDUULDUDLDDDRUURLDRRLURRDDRUUDRUDLLDLULLULUDUDURDDRLRDLRLDRLDDRULLLRUDULDRLRLRULLRLLRRRLLRRRDDRULRUURRLLLRULDLUDRRDDLLLUDDUDDDLURLUDRDLURUUDLLDLULURRLLDURUDDDDRLULRDDLRLDDLRLLDDRRLRDUDUUULRRLRULUDURDUDRLRLRUDUDLLRRRRLRRUDUL
|
||||
RULLLLUUUDLLDLLRULLRURRULDDRDLUULDRLLRUDLLRRLRDURLLDUUUUURUUURDLUURRLDDDLRRRRLRULDUDDLURDRRUUDLRRRDLDDUDUDDRUDURURLDULLDLULDLLUDLULRDRLLURRLLDURLDLRDLULUDDULDLDDDDDUURRDRURLDLDULLURDLLDDLLUDLDLDRLRLDLRDRLDLRRUUDRURLUUUDLURUULDUDRDULLDURUDLUUURRRLLDUDUDDUUULLLRUULDLURUDDRLUDRDDLDLLUDUDRRRDDUUULUULLLRLLUURDUUDRUUULULLDLDRUUDURLLUULRLDLUURLLUUDRURDDRLURULDUDUUDRRUUURDULRLDUUDDRURURDRRULDDDRLUDLLUUDURRRLDLRLRDRURLURLLLRLDDLRRLDLDDURDUUDRDRRLDRLULDRLURUUUDDRLLLDDLDURLLLLDRDLDRRUDULURRLULRDRLLUULLRLRDRLLULUURRUDRUDDDLLDURURLURRRDLLDRDLUDRULULULRLDLRRRUUDLULDURLRDRLULRUUURRDDLRUURUDRURUDURURDD
|
||||
DURRDLLLDDLLDLLRLULULLRDLDRRDDRDLRULURRDUUDDRLLDDLDRRLRDUDRULDLRURDUUDRDDLLDRRDRUDUDULLDDDDLDRRRLRLRDRDLURRDDLDDDUUDRDRLLLDLUDDDLUULRDRLLLRLLUULUDDDRLDUUUURULRDDURRDRLUURLUDRLRLLLDDLRDDUULRRRRURDLDDDRLDLDRRLLDRDDUDDUURDLDUUDRDLDLDDULULUDDLRDDRLRLDDLUDLLDRLUDUDDRULLRLDLLRULRUURDDRDRDRURDRRLRDLLUDDRRDRRLDDULLLDLUDRRUDLDULDRURRDURLURRLDLRDLRUDLULUDDRULRLLDUURULURULURRLURRUULRULRRRLRDLULRLRLUDURDDRUUURDRLLRRRDDLDRRRULLDLRDRULDRRLRRDLUDDRDDDUUURRLULLDRRUULULLRRRRLDDRDDLUURLLUDLLDUDLULUULUDLLUUURRRUDDDRLLLRDRUUDUUURDRULURRLRDLLUURLRDURULDRRUDURRDDLDRLDRUUDRLLUDLRRU
|
||||
2
advent_of_code_2016/src/day2/mod.rs
Normal file
2
advent_of_code_2016/src/day2/mod.rs
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
pub mod part1;
|
||||
pub mod part2;
|
||||
27
advent_of_code_2016/src/day2/part1.rs
Normal file
27
advent_of_code_2016/src/day2/part1.rs
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
|
||||
pub fn solve(input: &str) {
|
||||
let digits = [1, 2, 3, 4, 5, 6, 7, 8, 9];
|
||||
let instructions = input.lines().map(|line| line.as_bytes().iter().map(|ch| {
|
||||
match ch {
|
||||
b'U' => 0,
|
||||
b'R' => 1,
|
||||
b'D' => 2,
|
||||
b'L' => 3,
|
||||
_ => panic!("what the delly?")
|
||||
}
|
||||
}).collect::<Vec<_>>()).collect::<Vec<_>>();
|
||||
|
||||
let directions: [(i32, i32); 4] = [(0, -1), (1, 0), (0, 1), (-1, 0)];
|
||||
let mut position = (1, 1);
|
||||
|
||||
print!("code: ");
|
||||
for digit in instructions {
|
||||
for instruction in digit {
|
||||
let x = (position.0 + directions[instruction].0).clamp(0, 2);
|
||||
let y = (position.1 + directions[instruction].1).clamp(0, 2);
|
||||
position = (x, y);
|
||||
}
|
||||
|
||||
print!("{}", digits[(position.0 + position.1 * 3) as usize]);
|
||||
}
|
||||
}
|
||||
3
advent_of_code_2016/src/day2/part2.rs
Normal file
3
advent_of_code_2016/src/day2/part2.rs
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
pub fn solve(input: &str) {
|
||||
|
||||
}
|
||||
4
advent_of_code_2016/src/day2/test.txt
Normal file
4
advent_of_code_2016/src/day2/test.txt
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
ULL
|
||||
RRDDD
|
||||
LURDL
|
||||
UUUUD
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
use paste::paste;
|
||||
mod utility;
|
||||
|
||||
solve_day!{1}
|
||||
// test_day!{1}
|
||||
solve_day!{2}
|
||||
//test_day!{2}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue