Created
December 2, 2015 17:01
-
-
Save ninnypants/6b011bb942e3d1d592e2 to your computer and use it in GitHub Desktop.
Generates answers to http://adventofcode.com/day/2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var dimensions = [{ l: 3, w: 11, h: 24 }, { l: 13, w: 5, h: 19 }, { l: 1, w: 9, h: 27 }, { l: 24, w: 8, h: 21 }, { l: 6, w: 8, h: 17 }, { l: 19, w: 18, h: 22 }, { l: 10, w: 9, h: 12 }, { l: 12, w: 2, h: 5 }, { l: 26, w: 6, h: 11 }, { l: 9, w: 23, h: 15 }, { l: 12, w: 8, h: 17 }, { l: 13, w: 29, h: 10 }, { l: 28, w: 18, h: 6 }, { l: 22, w: 28, h: 26 }, { l: 1, w: 5, h: 11 }, { l: 29, w: 26, h: 12 }, { l: 8, w: 28, h: 29 }, { l: 27, w: 4, h: 21 }, { l: 12, w: 7, h: 16 }, { l: 7, w: 4, h: 23 }, { l: 15, w: 24, h: 8 }, { l: 15, w: 14, h: 2 }, { l: 11, w: 6, h: 29 }, { l: 28, w: 19, h: 9 }, { l: 10, w: 3, h: 1 }, { l: 5, w: 20, h: 13 }, { l: 10, w: 25, h: 1 }, { l: 22, w: 17, h: 7 }, { l: 16, w: 29, h: 3 }, { l: 18, w: 22, h: 8 }, { l: 18, w: 11, h: 19 }, { l: 21, w: 24, h: 20 }, { l: 4, w: 7, h: 17 }, { l: 22, w: 27, h: 12 }, { l: 1, w: 26, h: 6 }, { l: 5, w: 27, h: 24 }, { l: 29, w: 21, h: 3 }, { l: 25, w: 30, h: 2 }, { l: 21, w: 26, h: 2 }, { l: 10, w: 24, h: 27 }, { l: 10, w: 16, h: 28 }, { l: 18, w: 16, h: 23 }, { l: 6, w: 5, h: 26 }, { l: 19, w: 12, h: 20 }, { l: 6, w: 24, h: 25 }, { l: 11, w: 20, h: 7 }, { l: 4, w: 8, h: 5 }, { l: 2, w: 13, h: 11 }, { l: 11, w: 17, h: 1 }, { l: 13, w: 24, h: 6 }, { l: 22, w: 29, h: 16 }, { l: 4, w: 24, h: 20 }, { l: 10, w: 25, h: 10 }, { l: 12, w: 29, h: 23 }, { l: 23, w: 27, h: 12 }, { l: 11, w: 21, h: 9 }, { l: 13, w: 2, h: 6 }, { l: 15, w: 30, h: 2 }, { l: 8, w: 26, h: 24 }, { l: 24, w: 7, h: 30 }, { l: 22, w: 22, h: 8 }, { l: 29, w: 27, h: 8 }, { l: 28, w: 23, h: 27 }, { l: 13, w: 16, h: 14 }, { l: 9, w: 28, h: 20 }, { l: 21, w: 4, h: 30 }, { l: 21, w: 20, h: 20 }, { l: 11, w: 17, h: 30 }, { l: 9, w: 14, h: 22 }, { l: 20, w: 2, h: 6 }, { l: 10, w: 11, h: 14 }, { l: 1, w: 8, h: 23 }, { l: 23, w: 19, h: 19 }, { l: 26, w: 10, h: 13 }, { l: 21, w: 12, h: 12 }, { l: 25, w: 7, h: 24 }, { l: 1, w: 28, h: 17 }, { l: 20, w: 23, h: 9 }, { l: 2, w: 24, h: 27 }, { l: 20, w: 24, h: 29 }, { l: 1, w: 3, h: 10 }, { l: 5, w: 20, h: 14 }, { l: 25, w: 21, h: 3 }, { l: 15, w: 5, h: 22 }, { l: 14, w: 17, h: 19 }, { l: 27, w: 3, h: 18 }, { l: 29, w: 23, h: 19 }, { l: 14, w: 21, h: 19 }, { l: 20, w: 8, h: 3 }, { l: 22, w: 27, h: 12 }, { l: 24, w: 15, h: 18 }, { l: 9, w: 10, h: 19 }, { l: 29, w: 25, h: 28 }, { l: 14, w: 22, h: 6 }, { l: 4, w: 19, h: 28 }, { l: 4, w: 24, h: 14 }, { l: 17, w: 19, h: 17 }, { l: 7, w: 19, h: 29 }, { l: 28, w: 8, h: 26 }, { l: 7, w: 20, h: 16 }, { l: 11, w: 26, h: 29 }, { l: 2, w: 18, h: 3 }, { l: 12, w: 7, h: 18 }, { l: 11, w: 15, h: 21 }, { l: 24, w: 7, h: 26 }, { l: 2, w: 22, h: 23 }, { l: 2, w: 30, h: 5 }, { l: 1, w: 19, h: 8 }, { l: 15, w: 29, h: 10 }, { l: 15, w: 26, h: 22 }, { l: 20, w: 16, h: 14 }, { l: 25, w: 29, h: 22 }, { l: 3, w: 13, h: 19 }, { l: 1, w: 12, h: 30 }, { l: 3, w: 15, h: 27 }, { l: 19, w: 9, h: 11 }, { l: 30, w: 8, h: 21 }, { l: 26, w: 12, h: 20 }, { l: 11, w: 17, h: 19 }, { l: 17, w: 25, h: 1 }, { l: 19, w: 24, h: 12 }, { l: 30, w: 6, h: 20 }, { l: 11, w: 19, h: 18 }, { l: 18, w: 15, h: 29 }, { l: 18, w: 8, h: 9 }, { l: 25, w: 15, h: 5 }, { l: 15, w: 6, h: 26 }, { l: 13, w: 27, h: 19 }, { l: 23, w: 24, h: 12 }, { l: 3, w: 15, h: 28 }, { l: 17, w: 10, h: 10 }, { l: 15, w: 4, h: 7 }, { l: 15, w: 27, h: 7 }, { l: 21, w: 8, h: 11 }, { l: 9, w: 18, h: 2 }, { l: 7, w: 20, h: 20 }, { l: 17, w: 23, h: 12 }, { l: 2, w: 19, h: 1 }, { l: 7, w: 26, h: 26 }, { l: 13, w: 23, h: 8 }, { l: 10, w: 3, h: 12 }, { l: 11, w: 1, h: 9 }, { l: 1, w: 11, h: 19 }, { l: 25, w: 14, h: 26 }, { l: 16, w: 10, h: 15 }, { l: 7, w: 6, h: 11 }, { l: 8, w: 1, h: 27 }, { l: 20, w: 28, h: 17 }, { l: 3, w: 25, h: 9 }, { l: 30, w: 7, h: 5 }, { l: 17, w: 17, h: 4 }, { l: 23, w: 25, h: 27 }, { l: 23, w: 8, h: 5 }, { l: 13, w: 11, h: 1 }, { l: 15, w: 10, h: 21 }, { l: 22, w: 16, h: 1 }, { l: 12, w: 15, h: 28 }, { l: 27, w: 18, h: 26 }, { l: 25, w: 18, h: 5 }, { l: 21, w: 3, h: 27 }, { l: 15, w: 25, h: 5 }, { l: 29, w: 27, h: 19 }, { l: 11, w: 10, h: 12 }, { l: 22, w: 16, h: 21 }, { l: 11, w: 8, h: 18 }, { l: 6, w: 10, h: 23 }, { l: 21, w: 21, h: 2 }, { l: 13, w: 27, h: 28 }, { l: 2, w: 5, h: 20 }, { l: 23, w: 16, h: 20 }, { l: 1, w: 21, h: 7 }, { l: 22, w: 2, h: 13 }, { l: 11, w: 10, h: 4 }, { l: 7, w: 3, h: 4 }, { l: 19, w: 2, h: 5 }, { l: 21, w: 11, h: 1 }, { l: 7, w: 27, h: 26 }, { l: 12, w: 4, h: 23 }, { l: 12, w: 3, h: 15 }, { l: 25, w: 7, h: 4 }, { l: 20, w: 7, h: 15 }, { l: 16, w: 5, h: 11 }, { l: 1, w: 18, h: 26 }, { l: 11, w: 27, h: 10 }, { l: 17, w: 6, h: 24 }, { l: 19, w: 13, h: 16 }, { l: 6, w: 3, h: 11 }, { l: 4, w: 19, h: 18 }, { l: 16, w: 15, h: 15 }, { l: 1, w: 11, h: 17 }, { l: 19, w: 11, h: 29 }, { l: 18, w: 19, h: 1 }, { l: 1, w: 25, h: 7 }, { l: 8, w: 22, h: 14 }, { l: 15, w: 6, h: 19 }, { l: 5, w: 30, h: 18 }, { l: 30, w: 24, h: 22 }, { l: 11, w: 16, h: 2 }, { l: 21, w: 29, h: 19 }, { l: 20, w: 29, h: 11 }, { l: 27, w: 1, h: 18 }, { l: 20, w: 5, h: 30 }, { l: 12, w: 4, h: 28 }, { l: 3, w: 9, h: 30 }, { l: 26, w: 20, h: 15 }, { l: 18, w: 25, h: 18 }, { l: 20, w: 28, h: 28 }, { l: 21, w: 5, h: 3 }, { l: 20, w: 21, h: 25 }, { l: 19, w: 27, h: 22 }, { l: 8, w: 27, h: 9 }, { l: 1, w: 5, h: 15 }, { l: 30, w: 6, h: 19 }, { l: 16, w: 5, h: 15 }, { l: 18, w: 30, h: 21 }, { l: 4, w: 15, h: 8 }, { l: 9, w: 3, h: 28 }, { l: 18, w: 15, h: 27 }, { l: 25, w: 11, h: 6 }, { l: 17, w: 22, h: 15 }, { l: 18, w: 12, h: 18 }, { l: 14, w: 30, h: 30 }, { l: 1, w: 7, h: 23 }, { l: 27, w: 21, h: 12 }, { l: 15, w: 7, h: 18 }, { l: 16, w: 17, h: 24 }, { l: 11, w: 12, h: 19 }, { l: 18, w: 15, h: 21 }, { l: 6, w: 18, h: 15 }, { l: 2, w: 21, h: 4 }, { l: 12, w: 9, h: 14 }, { l: 19, w: 7, h: 25 }, { l: 22, w: 3, h: 1 }, { l: 29, w: 19, h: 7 }, { l: 30, w: 25, h: 7 }, { l: 6, w: 27, h: 27 }, { l: 5, w: 13, h: 9 }, { l: 21, w: 4, h: 18 }, { l: 13, w: 1, h: 16 }, { l: 11, w: 21, h: 25 }, { l: 27, w: 20, h: 27 }, { l: 14, w: 25, h: 9 }, { l: 23, w: 11, h: 15 }, { l: 22, w: 10, h: 26 }, { l: 15, w: 16, h: 4 }, { l: 14, w: 16, h: 21 }, { l: 1, w: 1, h: 24 }, { l: 17, w: 27, h: 3 }, { l: 25, w: 28, h: 16 }, { l: 12, w: 2, h: 29 }, { l: 9, w: 19, h: 28 }, { l: 12, w: 7, h: 17 }, { l: 6, w: 9, h: 19 }, { l: 15, w: 14, h: 24 }, { l: 25, w: 21, h: 23 }, { l: 26, w: 27, h: 25 }, { l: 7, w: 18, h: 13 }, { l: 15, w: 10, h: 6 }, { l: 22, w: 28, h: 2 }, { l: 15, w: 2, h: 14 }, { l: 3, w: 24, h: 18 }, { l: 30, w: 22, h: 7 }, { l: 18, w: 27, h: 17 }, { l: 29, w: 18, h: 7 }, { l: 20, w: 2, h: 4 }, { l: 4, w: 20, h: 26 }, { l: 23, w: 30, h: 15 }, { l: 5, w: 7, h: 3 }, { l: 4, w: 24, h: 12 }, { l: 24, w: 30, h: 20 }, { l: 26, w: 18, h: 17 }, { l: 6, w: 28, h: 3 }, { l: 29, w: 19, h: 29 }, { l: 14, w: 10, h: 4 }, { l: 15, w: 5, h: 23 }, { l: 12, w: 25, h: 4 }, { l: 7, w: 15, h: 19 }, { l: 26, w: 21, h: 19 }, { l: 18, w: 2, h: 23 }, { l: 19, w: 20, h: 3 }, { l: 3, w: 13, h: 9 }, { l: 29, w: 21, h: 24 }, { l: 26, w: 13, h: 29 }, { l: 30, w: 27, h: 4 }, { l: 20, w: 10, h: 29 }, { l: 21, w: 18, h: 8 }, { l: 7, w: 26, h: 10 }, { l: 29, w: 16, h: 21 }, { l: 22, w: 5, h: 11 }, { l: 17, w: 15, h: 2 }, { l: 7, w: 29, h: 5 }, { l: 6, w: 18, h: 15 }, { l: 23, w: 6, h: 14 }, { l: 10, w: 30, h: 14 }, { l: 26, w: 6, h: 16 }, { l: 24, w: 13, h: 25 }, { l: 17, w: 29, h: 20 }, { l: 4, w: 27, h: 19 }, { l: 28, w: 12, h: 11 }, { l: 23, w: 20, h: 3 }, { l: 22, w: 6, h: 20 }, { l: 29, w: 9, h: 19 }, { l: 10, w: 16, h: 22 }, { l: 30, w: 26, h: 4 }, { l: 29, w: 26, h: 11 }, { l: 2, w: 11, h: 15 }, { l: 1, w: 3, h: 30 }, { l: 30, w: 30, h: 29 }, { l: 9, w: 1, h: 3 }, { l: 30, w: 13, h: 16 }, { l: 20, w: 4, h: 5 }, { l: 23, w: 28, h: 11 }, { l: 24, w: 27, h: 1 }, { l: 4, w: 25, h: 10 }, { l: 9, w: 3, h: 6 }, { l: 14, w: 4, h: 15 }, { l: 4, w: 5, h: 25 }, { l: 27, w: 14, h: 13 }, { l: 20, w: 30, h: 3 }, { l: 28, w: 15, h: 25 }, { l: 5, w: 19, h: 2 }, { l: 10, w: 24, h: 29 }, { l: 29, w: 30, h: 18 }, { l: 30, w: 1, h: 25 }, { l: 7, w: 7, h: 15 }, { l: 1, w: 13, h: 16 }, { l: 23, w: 18, h: 4 }, { l: 1, w: 28, h: 8 }, { l: 24, w: 11, h: 8 }, { l: 22, w: 26, h: 19 }, { l: 30, w: 30, h: 14 }, { l: 2, w: 4, h: 13 }, { l: 27, w: 20, h: 26 }, { l: 16, w: 20, h: 17 }, { l: 11, w: 12, h: 13 }, { l: 28, w: 2, h: 17 }, { l: 15, w: 26, h: 13 }, { l: 29, w: 15, h: 25 }, { l: 30, w: 27, h: 9 }, { l: 2, w: 6, h: 25 }, { l: 10, w: 26, h: 19 }, { l: 16, w: 8, h: 23 }, { l: 12, w: 17, h: 18 }, { l: 26, w: 14, h: 22 }, { l: 13, w: 17, h: 4 }, { l: 27, w: 27, h: 29 }, { l: 17, w: 13, h: 22 }, { l: 9, w: 8, h: 3 }, { l: 25, w: 15, h: 20 }, { l: 14, w: 13, h: 16 }, { l: 8, w: 7, h: 13 }, { l: 12, w: 4, h: 21 }, { l: 27, w: 16, h: 15 }, { l: 6, w: 14, h: 5 }, { l: 28, w: 29, h: 17 }, { l: 23, w: 17, h: 25 }, { l: 10, w: 27, h: 28 }, { l: 1, w: 28, h: 21 }, { l: 18, w: 2, h: 30 }, { l: 25, w: 30, h: 16 }, { l: 25, w: 21, h: 7 }, { l: 2, w: 3, h: 4 }, { l: 9, w: 6, h: 13 }, { l: 19, w: 6, h: 10 }, { l: 28, w: 17, h: 8 }, { l: 13, w: 24, h: 28 }, { l: 24, w: 12, h: 7 }, { l: 5, w: 19, h: 5 }, { l: 18, w: 10, h: 27 }, { l: 16, w: 1, h: 6 }, { l: 12, w: 14, h: 30 }, { l: 1, w: 2, h: 28 }, { l: 23, w: 21, h: 2 }, { l: 13, w: 3, h: 23 }, { l: 9, w: 22, h: 10 }, { l: 10, w: 17, h: 2 }, { l: 24, w: 20, h: 11 }, { l: 30, w: 6, h: 14 }, { l: 28, w: 1, h: 16 }, { l: 24, w: 20, h: 1 }, { l: 28, w: 7, h: 7 }, { l: 1, w: 24, h: 21 }, { l: 14, w: 9, h: 7 }, { l: 22, w: 8, h: 15 }, { l: 20, w: 1, h: 21 }, { l: 6, w: 3, h: 7 }, { l: 7, w: 26, h: 14 }, { l: 5, w: 7, h: 28 }, { l: 5, w: 4, h: 4 }, { l: 15, w: 7, h: 28 }, { l: 30, w: 16, h: 23 }, { l: 7, w: 26, h: 2 }, { l: 1, w: 2, h: 30 }, { l: 24, w: 28, h: 20 }, { l: 5, w: 17, h: 28 }, { l: 4, w: 15, h: 20 }, { l: 15, w: 26, h: 2 }, { l: 1, w: 3, h: 23 }, { l: 22, w: 30, h: 24 }, { l: 9, w: 20, h: 16 }, { l: 7, w: 15, h: 2 }, { l: 6, w: 21, h: 18 }, { l: 21, w: 21, h: 29 }, { l: 29, w: 10, h: 10 }, { l: 4, w: 3, h: 23 }, { l: 23, w: 2, h: 18 }, { l: 29, w: 24, h: 14 }, { l: 29, w: 29, h: 16 }, { l: 22, w: 28, h: 24 }, { l: 21, w: 18, h: 24 }, { l: 16, w: 21, h: 6 }, { l: 3, w: 9, h: 22 }, { l: 9, w: 18, h: 4 }, { l: 22, w: 9, h: 9 }, { l: 12, w: 9, h: 13 }, { l: 18, w: 21, h: 14 }, { l: 7, w: 8, h: 29 }, { l: 28, w: 28, h: 14 }, { l: 1, w: 6, h: 24 }, { l: 11, w: 11, h: 3 }, { l: 8, w: 28, h: 6 }, { l: 11, w: 16, h: 10 }, { l: 9, w: 16, h: 16 }, { l: 6, w: 6, h: 19 }, { l: 21, w: 5, h: 12 }, { l: 15, w: 17, h: 12 }, { l: 3, w: 6, h: 29 }, { l: 19, w: 1, h: 26 }, { l: 10, w: 30, h: 25 }, { l: 24, w: 26, h: 21 }, { l: 1, w: 10, h: 18 }, { l: 6, w: 1, h: 16 }, { l: 4, w: 17, h: 27 }, { l: 17, w: 11, h: 27 }, { l: 15, w: 15, h: 21 }, { l: 14, w: 23, h: 1 }, { l: 8, w: 9, h: 30 }, { l: 22, w: 22, h: 25 }, { l: 20, w: 27, h: 22 }, { l: 12, w: 7, h: 9 }, { l: 9, w: 26, h: 19 }, { l: 26, w: 25, h: 12 }, { l: 8, w: 8, h: 16 }, { l: 28, w: 15, h: 10 }, { l: 29, w: 18, h: 2 }, { l: 25, w: 22, h: 6 }, { l: 4, w: 6, h: 15 }, { l: 12, w: 18, h: 4 }, { l: 10, w: 3, h: 20 }, { l: 17, w: 28, h: 17 }, { l: 14, w: 25, h: 13 }, { l: 14, w: 10, h: 3 }, { l: 14, w: 5, h: 10 }, { l: 7, w: 7, h: 22 }, { l: 21, w: 2, h: 14 }, { l: 1, w: 21, h: 5 }, { l: 27, w: 29, h: 1 }, { l: 6, w: 20, h: 4 }, { l: 7, w: 19, h: 23 }, { l: 28, w: 19, h: 27 }, { l: 3, w: 9, h: 18 }, { l: 13, w: 17, h: 17 }, { l: 18, w: 8, h: 15 }, { l: 26, w: 23, h: 17 }, { l: 10, w: 10, h: 13 }, { l: 11, w: 5, h: 21 }, { l: 25, w: 15, h: 29 }, { l: 6, w: 23, h: 24 }, { l: 10, w: 7, h: 2 }, { l: 19, w: 10, h: 30 }, { l: 4, w: 3, h: 23 }, { l: 22, w: 12, h: 6 }, { l: 11, w: 17, h: 16 }, { l: 6, w: 8, h: 12 }, { l: 18, w: 20, h: 11 }, { l: 6, w: 2, h: 2 }, { l: 17, w: 4, h: 11 }, { l: 20, w: 23, h: 22 }, { l: 29, w: 23, h: 24 }, { l: 25, w: 11, h: 21 }, { l: 22, w: 11, h: 15 }, { l: 29, w: 3, h: 9 }, { l: 13, w: 30, h: 5 }, { l: 17, w: 10, h: 12 }, { l: 10, w: 30, h: 8 }, { l: 21, w: 16, h: 17 }, { l: 1, w: 5, h: 26 }, { l: 22, w: 15, h: 16 }, { l: 27, w: 7, h: 11 }, { l: 16, w: 8, h: 18 }, { l: 29, w: 9, h: 7 }, { l: 25, w: 4, h: 17 }, { l: 10, w: 21, h: 25 }, { l: 2, w: 19, h: 21 }, { l: 29, w: 11, h: 16 }, { l: 18, w: 26, h: 21 }, { l: 2, w: 8, h: 20 }, { l: 17, w: 29, h: 27 }, { l: 25, w: 27, h: 4 }, { l: 14, w: 3, h: 14 }, { l: 25, w: 29, h: 29 }, { l: 26, w: 18, h: 11 }, { l: 8, w: 24, h: 28 }, { l: 7, w: 30, h: 24 }, { l: 12, w: 30, h: 22 }, { l: 29, w: 20, h: 6 }, { l: 3, w: 17, h: 1 }, { l: 6, w: 15, h: 14 }, { l: 6, w: 22, h: 20 }, { l: 13, w: 26, h: 26 }, { l: 12, w: 2, h: 1 }, { l: 7, w: 14, h: 12 }, { l: 15, w: 16, h: 11 }, { l: 3, w: 21, h: 4 }, { l: 30, w: 17, h: 29 }, { l: 9, w: 18, h: 27 }, { l: 11, w: 28, h: 16 }, { l: 22, w: 3, h: 25 }, { l: 18, w: 15, h: 15 }, { l: 2, w: 30, h: 12 }, { l: 3, w: 27, h: 22 }, { l: 10, w: 8, h: 8 }, { l: 26, w: 16, h: 14 }, { l: 15, w: 2, h: 29 }, { l: 12, w: 10, h: 7 }, { l: 21, w: 20, h: 15 }, { l: 2, w: 15, h: 25 }, { l: 4, w: 14, h: 13 }, { l: 3, w: 15, h: 13 }, { l: 29, w: 8, h: 3 }, { l: 7, w: 7, h: 28 }, { l: 15, w: 10, h: 24 }, { l: 23, w: 15, h: 5 }, { l: 5, w: 7, h: 14 }, { l: 24, w: 1, h: 22 }, { l: 1, w: 11, h: 13 }, { l: 26, w: 4, h: 19 }, { l: 19, w: 16, h: 26 }, { l: 5, w: 25, h: 5 }, { l: 17, w: 25, h: 14 }, { l: 23, w: 7, h: 14 }, { l: 24, w: 6, h: 17 }, { l: 5, w: 13, h: 12 }, { l: 20, w: 20, h: 5 }, { l: 22, w: 29, h: 17 }, { l: 11, w: 17, h: 29 }, { l: 25, w: 6, h: 4 }, { l: 29, w: 8, h: 16 }, { l: 28, w: 22, h: 24 }, { l: 24, w: 23, h: 17 }, { l: 16, w: 17, h: 4 }, { l: 17, w: 8, h: 25 }, { l: 22, w: 9, h: 13 }, { l: 24, w: 4, h: 8 }, { l: 18, w: 10, h: 20 }, { l: 21, w: 23, h: 21 }, { l: 13, w: 14, h: 12 }, { l: 23, w: 26, h: 4 }, { l: 4, w: 10, h: 29 }, { l: 2, w: 18, h: 18 }, { l: 19, w: 5, h: 21 }, { l: 2, w: 27, h: 23 }, { l: 6, w: 29, h: 30 }, { l: 21, w: 9, h: 20 }, { l: 6, w: 5, h: 16 }, { l: 25, w: 10, h: 27 }, { l: 5, w: 29, h: 21 }, { l: 24, w: 14, h: 19 }, { l: 19, w: 11, h: 8 }, { l: 2, w: 28, h: 6 }, { l: 19, w: 25, h: 6 }, { l: 27, w: 1, h: 11 }, { l: 6, w: 8, h: 29 }, { l: 18, w: 25, h: 30 }, { l: 4, w: 27, h: 26 }, { l: 8, w: 12, h: 1 }, { l: 7, w: 17, h: 25 }, { l: 7, w: 14, h: 27 }, { l: 12, w: 9, h: 5 }, { l: 14, w: 29, h: 13 }, { l: 18, w: 17, h: 5 }, { l: 23, w: 1, h: 3 }, { l: 28, w: 5, h: 13 }, { l: 3, w: 2, h: 26 }, { l: 3, w: 7, h: 11 }, { l: 1, w: 8, h: 7 }, { l: 12, w: 5, h: 4 }, { l: 2, w: 30, h: 21 }, { l: 16, w: 30, h: 11 }, { l: 3, w: 26, h: 4 }, { l: 16, w: 9, h: 4 }, { l: 11, w: 9, h: 22 }, { l: 23, w: 5, h: 6 }, { l: 13, w: 20, h: 3 }, { l: 4, w: 3, h: 2 }, { l: 14, w: 10, h: 29 }, { l: 11, w: 8, h: 12 }, { l: 26, w: 15, h: 16 }, { l: 7, w: 17, h: 29 }, { l: 18, w: 19, h: 18 }, { l: 8, w: 28, h: 4 }, { l: 22, w: 6, h: 13 }, { l: 9, w: 23, h: 7 }, { l: 11, w: 23, h: 20 }, { l: 13, w: 11, h: 26 }, { l: 15, w: 30, h: 13 }, { l: 1, w: 5, h: 8 }, { l: 5, w: 10, h: 24 }, { l: 22, w: 25, h: 17 }, { l: 27, w: 20, h: 25 }, { l: 30, w: 10, h: 21 }, { l: 16, w: 28, h: 24 }, { l: 20, w: 12, h: 8 }, { l: 17, w: 25, h: 1 }, { l: 30, w: 14, h: 9 }, { l: 14, w: 18, h: 6 }, { l: 8, w: 28, h: 29 }, { l: 12, w: 18, h: 29 }, { l: 9, w: 7, h: 18 }, { l: 6, w: 12, h: 25 }, { l: 20, w: 13, h: 24 }, { l: 22, w: 3, h: 12 }, { l: 5, w: 23, h: 22 }, { l: 8, w: 10, h: 17 }, { l: 7, w: 23, h: 5 }, { l: 10, w: 26, h: 27 }, { l: 14, w: 26, h: 19 }, { l: 10, w: 18, h: 24 }, { l: 8, w: 4, h: 4 }, { l: 16, w: 15, h: 11 }, { l: 3, w: 14, h: 9 }, { l: 18, w: 5, h: 30 }, { l: 29, w: 12, h: 26 }, { l: 16, w: 13, h: 12 }, { l: 15, w: 10, h: 7 }, { l: 18, w: 5, h: 26 }, { l: 14, w: 1, h: 6 }, { l: 10, w: 8, h: 29 }, { l: 3, w: 4, h: 9 }, { l: 19, w: 4, h: 23 }, { l: 28, w: 17, h: 23 }, { l: 30, w: 7, h: 17 }, { l: 19, w: 5, h: 9 }, { l: 26, w: 29, h: 28 }, { l: 22, w: 13, h: 17 }, { l: 28, w: 2, h: 1 }, { l: 20, w: 30, h: 8 }, { l: 15, w: 13, h: 21 }, { l: 25, w: 23, h: 19 }, { l: 27, w: 23, h: 1 }, { l: 4, w: 6, h: 23 }, { l: 29, w: 29, h: 24 }, { l: 5, w: 18, h: 7 }, { l: 4, w: 6, h: 30 }, { l: 17, w: 15, h: 2 }, { l: 27, w: 4, h: 2 }, { l: 25, w: 24, h: 14 }, { l: 28, w: 8, h: 30 }, { l: 24, w: 29, h: 5 }, { l: 14, w: 30, h: 14 }, { l: 10, w: 18, h: 19 }, { l: 15, w: 26, h: 22 }, { l: 24, w: 19, h: 21 }, { l: 29, w: 23, h: 27 }, { l: 21, w: 10, h: 16 }, { l: 7, w: 4, h: 29 }, { l: 14, w: 21, h: 3 }, { l: 21, w: 4, h: 28 }, { l: 17, w: 16, h: 15 }, { l: 24, w: 7, h: 13 }, { l: 21, w: 24, h: 15 }, { l: 25, w: 11, h: 16 }, { l: 10, w: 26, h: 13 }, { l: 23, w: 20, h: 14 }, { l: 20, w: 29, h: 27 }, { l: 14, w: 24, h: 14 }, { l: 14, w: 23, h: 12 }, { l: 18, w: 6, h: 5 }, { l: 3, w: 18, h: 9 }, { l: 8, w: 18, h: 19 }, { l: 20, w: 26, h: 15 }, { l: 16, w: 14, h: 13 }, { l: 30, w: 16, h: 3 }, { l: 17, w: 13, h: 4 }, { l: 15, w: 19, h: 30 }, { l: 20, w: 3, h: 8 }, { l: 13, w: 4, h: 5 }, { l: 12, w: 10, h: 15 }, { l: 8, w: 23, h: 26 }, { l: 16, w: 8, h: 15 }, { l: 22, w: 8, h: 11 }, { l: 12, w: 11, h: 18 }, { l: 28, w: 3, h: 30 }, { l: 15, w: 8, h: 4 }, { l: 13, w: 22, h: 13 }, { l: 21, w: 26, h: 21 }, { l: 29, w: 1, h: 15 }, { l: 28, w: 9, h: 5 }, { l: 27, w: 3, h: 26 }, { l: 22, w: 19, h: 30 }, { l: 4, w: 11, h: 22 }, { l: 21, w: 27, h: 20 }, { l: 22, w: 26, h: 7 }, { l: 19, w: 28, h: 20 }, { l: 24, w: 23, h: 16 }, { l: 26, w: 12, h: 9 }, { l: 13, w: 22, h: 9 }, { l: 5, w: 6, h: 23 }, { l: 20, w: 7, h: 2 }, { l: 18, w: 26, h: 30 }, { l: 3, w: 6, h: 28 }, { l: 24, w: 18, h: 13 }, { l: 28, w: 19, h: 16 }, { l: 25, w: 21, h: 25 }, { l: 25, w: 19, h: 23 }, { l: 22, w: 29, h: 10 }, { l: 29, w: 19, h: 30 }, { l: 4, w: 7, h: 27 }, { l: 5, w: 12, h: 28 }, { l: 8, w: 26, h: 6 }, { l: 14, w: 14, h: 25 }, { l: 17, w: 17, h: 2 }, { l: 5, w: 27, h: 11 }, { l: 8, w: 2, h: 2 }, { l: 3, w: 20, h: 24 }, { l: 26, w: 10, h: 9 }, { l: 22, w: 28, h: 27 }, { l: 18, w: 15, h: 20 }, { l: 12, w: 11, h: 1 }, { l: 5, w: 14, h: 30 }, { l: 7, w: 3, h: 16 }, { l: 2, w: 16, h: 16 }, { l: 18, w: 20, h: 15 }, { l: 13, w: 14, h: 29 }, { l: 1, w: 17, h: 12 }, { l: 13, w: 5, h: 23 }, { l: 19, w: 4, h: 10 }, { l: 25, w: 19, h: 11 }, { l: 15, w: 17, h: 14 }, { l: 1, w: 28, h: 27 }, { l: 11, w: 9, h: 28 }, { l: 9, w: 10, h: 18 }, { l: 30, w: 11, h: 22 }, { l: 21, w: 21, h: 20 }, { l: 2, w: 1, h: 5 }, { l: 2, w: 25, h: 1 }, { l: 7, w: 3, h: 4 }, { l: 22, w: 15, h: 29 }, { l: 21, w: 28, h: 15 }, { l: 12, w: 12, h: 4 }, { l: 21, w: 30, h: 6 }, { l: 15, w: 10, h: 7 }, { l: 10, w: 14, h: 6 }, { l: 21, w: 26, h: 18 }, { l: 14, w: 25, h: 6 }, { l: 9, w: 7, h: 11 }, { l: 22, w: 3, h: 1 }, { l: 1, w: 16, h: 27 }, { l: 1, w: 14, h: 23 }, { l: 2, w: 13, h: 8 }, { l: 14, w: 19, h: 11 }, { l: 21, w: 26, h: 1 }, { l: 4, w: 28, h: 13 }, { l: 12, w: 16, h: 20 }, { l: 21, w: 13, h: 9 }, { l: 3, w: 4, h: 13 }, { l: 14, w: 9, h: 8 }, { l: 21, w: 21, h: 12 }, { l: 27, w: 10, h: 17 }, { l: 6, w: 20, h: 6 }, { l: 28, w: 23, h: 23 }, { l: 2, w: 28, h: 12 }, { l: 8, w: 10, h: 10 }, { l: 3, w: 9, h: 2 }, { l: 20, w: 3, h: 29 }, { l: 19, w: 4, h: 16 }, { l: 29, w: 24, h: 9 }, { l: 26, w: 20, h: 8 }, { l: 15, w: 28, h: 26 }, { l: 18, w: 17, h: 10 }, { l: 7, w: 22, h: 10 }, { l: 20, w: 15, h: 9 }, { l: 6, w: 10, h: 8 }, { l: 7, w: 26, h: 21 }, { l: 8, w: 8, h: 16 }, { l: 15, w: 6, h: 29 }, { l: 22, w: 30, h: 11 }, { l: 18, w: 25, h: 8 }, { l: 6, w: 21, h: 20 }, { l: 7, w: 23, h: 25 }, { l: 8, w: 25, h: 26 }, { l: 11, w: 25, h: 27 }, { l: 22, w: 18, h: 23 }, { l: 3, w: 2, h: 14 }, { l: 16, w: 16, h: 1 }, { l: 15, w: 13, h: 11 }, { l: 3, w: 9, h: 25 }, { l: 29, w: 25, h: 24 }, { l: 9, w: 15, h: 1 }, { l: 12, w: 4, h: 1 }, { l: 23, w: 30, h: 20 }, { l: 3, w: 1, h: 23 }, { l: 6, w: 10, h: 29 }, { l: 28, w: 13, h: 24 }, { l: 4, w: 19, h: 17 }, { l: 6, w: 6, h: 25 }, { l: 27, w: 29, h: 17 }, { l: 12, w: 13, h: 2 }, { l: 10, w: 7, h: 13 }, { l: 14, w: 15, h: 8 }, { l: 22, w: 2, h: 3 }, { l: 27, w: 17, h: 19 }, { l: 23, w: 10, h: 16 }, { l: 5, w: 9, h: 25 }, { l: 9, w: 25, h: 14 }, { l: 11, w: 18, h: 6 }, { l: 18, w: 10, h: 12 }, { l: 9, w: 4, h: 15 }, { l: 7, w: 16, h: 14 }, { l: 17, w: 24, h: 10 }, { l: 11, w: 4, h: 6 }, { l: 12, w: 9, h: 17 }, { l: 22, w: 18, h: 12 }, { l: 6, w: 24, h: 24 }, { l: 6, w: 22, h: 23 }, { l: 5, w: 17, h: 30 }, { l: 6, w: 9, h: 5 }, { l: 17, w: 20, h: 10 }, { l: 6, w: 8, h: 12 }, { l: 14, w: 17, h: 13 }, { l: 29, w: 10, h: 17 }, { l: 22, w: 4, h: 5 }, { l: 10, w: 19, h: 30 }, { l: 22, w: 29, h: 11 }, { l: 10, w: 12, h: 29 }, { l: 21, w: 22, h: 26 }, { l: 16, w: 6, h: 25 }, { l: 1, w: 26, h: 24 }, { l: 30, w: 17, h: 16 }, { l: 27, w: 28, h: 5 }, { l: 30, w: 13, h: 22 }, { l: 7, w: 26, h: 12 }, { l: 11, w: 24, h: 30 }, { l: 1, w: 17, h: 25 }, { l: 22, w: 1, h: 3 }, { l: 29, w: 24, h: 6 }, { l: 4, w: 8, h: 24 }, { l: 13, w: 9, h: 20 }, { l: 8, w: 12, h: 9 }, { l: 21, w: 25, h: 4 }, { l: 23, w: 23, h: 28 }, { l: 5, w: 2, h: 19 }, { l: 29, w: 3, h: 15 }, { l: 22, w: 1, h: 14 }, { l: 3, w: 23, h: 30 }, { l: 8, w: 25, h: 3 }, { l: 15, w: 8, h: 14 }, { l: 30, w: 14, h: 6 }, { l: 23, w: 27, h: 24 }, { l: 19, w: 1, h: 2 }, { l: 10, w: 9, h: 13 }, { l: 13, w: 8, h: 7 }, { l: 8, w: 13, h: 22 }, { l: 5, w: 15, h: 20 }, { l: 17, w: 14, h: 8 }, { l: 5, w: 11, h: 20 }, { l: 5, w: 10, h: 27 }, { l: 24, w: 17, h: 19 }, { l: 21, w: 2, h: 3 }, { l: 15, w: 30, h: 26 }, { l: 21, w: 19, h: 15 }, { l: 2, w: 7, h: 23 }, { l: 13, w: 17, h: 25 }, { l: 30, w: 15, h: 19 }, { l: 26, w: 4, h: 10 }, { l: 2, w: 25, h: 8 }, { l: 9, w: 9, h: 10 }, { l: 2, w: 25, h: 8 }, { l: 19, w: 21, h: 30 }, { l: 17, w: 26, h: 12 }, { l: 7, w: 5, h: 10 }, { l: 2, w: 22, h: 14 }, { l: 10, w: 17, h: 30 }, { l: 1, w: 8, h: 5 }, { l: 23, w: 2, h: 25 }, { l: 22, w: 29, h: 8 }, { l: 13, w: 26, h: 1 }, { l: 26, w: 3, h: 30 }, { l: 25, w: 17, h: 8 }, { l: 25, w: 18, h: 26 }, { l: 26, w: 19, h: 15 }, { l: 8, w: 28, h: 10 }, { l: 12, w: 16, h: 29 }, { l: 30, w: 6, h: 29 }, { l: 28, w: 19, h: 4 }, { l: 27, w: 26, h: 18 }, { l: 15, w: 23, h: 17 }, { l: 5, w: 21, h: 30 }, { l: 8, w: 11, h: 13 }, { l: 2, w: 26, h: 7 }, { l: 19, w: 9, h: 24 }, { l: 3, w: 22, h: 23 }, { l: 6, w: 7, h: 18 }, { l: 4, w: 26, h: 30 }, { l: 13, w: 25, h: 20 }, { l: 17, w: 3, h: 15 }, { l: 8, w: 20, h: 18 }, { l: 23, w: 18, h: 23 }, { l: 28, w: 23, h: 9 }, { l: 16, w: 3, h: 4 }, { l: 1, w: 29, h: 14 }, { l: 20, w: 26, h: 22 }, { l: 3, w: 2, h: 22 }, { l: 23, w: 8, h: 17 }, { l: 19, w: 5, h: 17 }, { l: 21, w: 18, h: 20 }, { l: 17, w: 21, h: 8 }, { l: 30, w: 28, h: 1 }, { l: 29, w: 19, h: 23 }, { l: 12, w: 12, h: 11 }, { l: 24, w: 18, h: 7 }, { l: 21, w: 18, h: 14 }, { l: 14, w: 26, h: 25 }, { l: 9, w: 11, h: 3 }, { l: 10, w: 7, h: 15 }, { l: 27, w: 6, h: 28 }, { l: 14, w: 26, h: 4 }, { l: 28, w: 4, h: 1 }, { l: 22, w: 25, h: 29 }, { l: 6, w: 26, h: 6 }, { l: 1, w: 3, h: 13 }, { l: 26, w: 22, h: 12 }, { l: 6, w: 21, h: 26 }, { l: 23, w: 4, h: 27 }, { l: 26, w: 13, h: 24 }, { l: 5, w: 24, h: 28 }, { l: 22, w: 16, h: 7 }, { l: 3, w: 27, h: 24 }, { l: 19, w: 28, h: 2 }, { l: 11, w: 13, h: 9 }, { l: 29, w: 16, h: 22 }, { l: 30, w: 10, h: 24 }, { l: 14, w: 14, h: 22 }, { l: 22, w: 23, h: 16 }, { l: 14, w: 8, h: 3 }, { l: 20, w: 5, h: 14 }, { l: 28, w: 6, h: 13 }, { l: 3, w: 15, h: 25 }, { l: 4, w: 12, h: 22 }, { l: 15, w: 12, h: 25 }, { l: 10, w: 11, h: 24 }, { l: 7, w: 7, h: 6 }, { l: 8, w: 11, h: 9 }, { l: 21, w: 10, h: 29 }, { l: 23, w: 28, h: 30 }, { l: 8, w: 29, h: 26 }, { l: 16, w: 27, h: 11 }, { l: 1, w: 10, h: 2 }, { l: 24, w: 20, h: 16 }, { l: 7, w: 12, h: 28 }, { l: 28, w: 8, h: 20 }, { l: 14, w: 10, h: 30 }, { l: 1, w: 19, h: 6 }, { l: 4, w: 12, h: 20 }, { l: 18, w: 2, h: 7 }, { l: 24, w: 18, h: 17 }, { l: 16, w: 11, h: 10 }, { l: 1, w: 12, h: 22 }, { l: 30, w: 16, h: 28 }, { l: 18, w: 12, h: 11 }, { l: 28, w: 9, h: 8 }, { l: 23, w: 6, h: 17 }, { l: 10, w: 3, h: 11 }, { l: 5, w: 12, h: 8 }, { l: 22, w: 2, h: 23 }, { l: 9, w: 19, h: 14 }, { l: 15, w: 28, h: 13 }, { l: 27, w: 20, h: 23 }, { l: 19, w: 16, h: 12 }, { l: 19, w: 30, h: 15 }, { l: 8, w: 17, h: 4 }, { l: 10, w: 22, h: 18 }, { l: 13, w: 22, h: 4 }, { l: 3, w: 12, h: 19 }, { l: 22, w: 16, h: 23 }, { l: 11, w: 8, h: 19 }, { l: 8, w: 11, h: 6 }, { l: 7, w: 14, h: 7 }, { l: 29, w: 17, h: 29 }, { l: 21, w: 8, h: 12 }, { l: 21, w: 9, h: 11 }, { l: 20, w: 1, h: 27 }, { l: 1, w: 22, h: 11 }, { l: 5, w: 28, h: 4 }, { l: 26, w: 7, h: 26 }, { l: 30, w: 12, h: 18 }, { l: 29, w: 11, h: 20 }, { l: 3, w: 12, h: 15 }, { l: 24, w: 25, h: 17 }, { l: 14, w: 6, h: 11 } ]; | |
/** | |
* Calculate total wrapping paper based on dimensions of box with extra for overlap on shortest sides. | |
* | |
* @param {object} dimensions Object with length, width, and height dimensions. | |
* @return {int} Total paper needed to wrap the box. | |
*/ | |
function getNeededWrapping( dimensions ) { | |
var total = 0, sides = []; | |
// Get the areas of each side. | |
sides.push( dimensions.l * dimensions.w ); | |
sides.push( dimensions.h * dimensions.w ); | |
sides.push( dimensions.l * dimensions.h ); | |
// Sort smallest to largest. | |
sides.sort( sortAsc ); | |
// Get total + the area of the smallest side. | |
total += sides[0]; | |
total += sides.reduce( function( prev, current ) { | |
return prev + 2 * current; | |
}, 0 ); | |
return total; | |
} | |
/** | |
* Calculates the length of ribbon needed to go around the smallest circumfrence of the box | |
* plus the ribbon for a bow that takes the same length as the number of cubic feet in the box. | |
* | |
* @param {object} dimensions Object with length, width, and height dimensions. | |
* @return {int} Total length of ribbon needed. | |
*/ | |
function getNeededRibbon( dimensions ) { | |
var total = 0, sides = [ dimensions.l, dimensions.w, dimensions.h ]; | |
// Sort sides so we find the shortest circumfrence. | |
sides.sort( sortAsc ); | |
total += 2 * sides[0] + 2 * sides[1]; | |
// Get volume. | |
total += dimensions.l * dimensions.w * dimensions.h; | |
return total; | |
} | |
/** | |
* Sorts array of ints from smallest to largest when passed to Array.prototype.sort() | |
* | |
* @param {int} a Array item 1. | |
* @param {int} b Array item 2. | |
* @return {int} Array sort indicator. | |
*/ | |
function sortAsc( a, b ) { | |
if ( a < b ) { | |
return -1; | |
} else if ( a > b ) { | |
return 1; | |
} else { | |
return 0; | |
} | |
} | |
var paper = 0, | |
ribbon = 0; | |
for ( var i = 0; i < dimensions.length; i++ ) { | |
paper += getNeededWrapping( dimensions[ i ] ); | |
ribbon += getNeededRibbon( dimensions[ i ] ); | |
} | |
console.log( paper, ribbon ); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment