Day 1.
This commit is contained in:
parent
2b4c04735b
commit
0bcab1f340
|
@ -0,0 +1,2 @@
|
|||
**/*.bak
|
||||
compiled/
|
|
@ -0,0 +1,100 @@
|
|||
142195
|
||||
119326
|
||||
57976
|
||||
138834
|
||||
132685
|
||||
113092
|
||||
88731
|
||||
52063
|
||||
122899
|
||||
78681
|
||||
117881
|
||||
121912
|
||||
112633
|
||||
85163
|
||||
145655
|
||||
76668
|
||||
92939
|
||||
81941
|
||||
62645
|
||||
126482
|
||||
114642
|
||||
55588
|
||||
95934
|
||||
68172
|
||||
62160
|
||||
111109
|
||||
141496
|
||||
97453
|
||||
83723
|
||||
50309
|
||||
82930
|
||||
66124
|
||||
142265
|
||||
100066
|
||||
147434
|
||||
149708
|
||||
77906
|
||||
71147
|
||||
76590
|
||||
59528
|
||||
67973
|
||||
68187
|
||||
135534
|
||||
129331
|
||||
147054
|
||||
89062
|
||||
63159
|
||||
80990
|
||||
103402
|
||||
139627
|
||||
87251
|
||||
66561
|
||||
102708
|
||||
91307
|
||||
121287
|
||||
149077
|
||||
142275
|
||||
144917
|
||||
98677
|
||||
114912
|
||||
102236
|
||||
56147
|
||||
130660
|
||||
63523
|
||||
112577
|
||||
75086
|
||||
136006
|
||||
142090
|
||||
80446
|
||||
53900
|
||||
144975
|
||||
143195
|
||||
138974
|
||||
60145
|
||||
132474
|
||||
62640
|
||||
62270
|
||||
76275
|
||||
62315
|
||||
85065
|
||||
99617
|
||||
73579
|
||||
97553
|
||||
79715
|
||||
81297
|
||||
77342
|
||||
142907
|
||||
114001
|
||||
137846
|
||||
122398
|
||||
71457
|
||||
133929
|
||||
110617
|
||||
68928
|
||||
56741
|
||||
87754
|
||||
53907
|
||||
68322
|
||||
85782
|
||||
140916
|
|
@ -0,0 +1,28 @@
|
|||
#lang racket
|
||||
|
||||
(require racket/format
|
||||
2htdp/batch-io)
|
||||
|
||||
(provide problem-input
|
||||
show-solution
|
||||
sum)
|
||||
|
||||
;; IO helpers
|
||||
|
||||
;; problem-input : number? -> (listof string?)
|
||||
;; Return contents of input file input/xx.txt as lines of strings.
|
||||
(define (problem-input n)
|
||||
(let* ([filename (~a n #:min-width 2 #:align 'right #:left-pad-string "0")]
|
||||
[path (string-append "../input/" filename ".txt")])
|
||||
(read-lines path)))
|
||||
|
||||
;; show-solution : any/c -> any/c -> void
|
||||
;; Print part1 and part2 on separate lines.
|
||||
(define (show-solution part1 part2)
|
||||
(printf "Part 1: ~a\nPart 2: ~a\n" part1 part2))
|
||||
|
||||
|
||||
;; Common helpers
|
||||
|
||||
;; sum : (listof number) -> number
|
||||
(define (sum ns) (apply + ns))
|
|
@ -0,0 +1,716 @@
|
|||
#reader(lib"read.ss""wxme")WXME0108 ##
|
||||
#|
|
||||
This file uses the GRacket editor format.
|
||||
Open this file in DrRacket version 7.0 or later to read it.
|
||||
|
||||
Most likely, it was created by saving a program in DrRacket,
|
||||
and it probably contains a program with non-text elements
|
||||
(such as images or comment boxes).
|
||||
|
||||
http://racket-lang.org/
|
||||
|#
|
||||
33 7 #"wxtext\0"
|
||||
3 1 6 #"wxtab\0"
|
||||
1 1 8 #"wximage\0"
|
||||
2 0 8 #"wxmedia\0"
|
||||
4 1 34 #"(lib \"syntax-browser.ss\" \"mrlib\")\0"
|
||||
1 0 36 #"(lib \"cache-image-snip.ss\" \"mrlib\")\0"
|
||||
1 0 68
|
||||
(
|
||||
#"((lib \"image-core.ss\" \"mrlib\") (lib \"image-core-wxme.rkt\" \"mr"
|
||||
#"lib\"))\0"
|
||||
) 1 0 16 #"drscheme:number\0"
|
||||
3 0 44 #"(lib \"number-snip.ss\" \"drscheme\" \"private\")\0"
|
||||
1 0 36 #"(lib \"comment-snip.ss\" \"framework\")\0"
|
||||
1 0 93
|
||||
(
|
||||
#"((lib \"collapsed-snipclass.ss\" \"framework\") (lib \"collapsed-sni"
|
||||
#"pclass-wxme.ss\" \"framework\"))\0"
|
||||
) 0 0 43 #"(lib \"collapsed-snipclass.ss\" \"framework\")\0"
|
||||
0 0 19 #"drscheme:sexp-snip\0"
|
||||
0 0 29 #"drscheme:bindings-snipclass%\0"
|
||||
1 0 101
|
||||
(
|
||||
#"((lib \"ellipsis-snip.rkt\" \"drracket\" \"private\") (lib \"ellipsi"
|
||||
#"s-snip-wxme.rkt\" \"drracket\" \"private\"))\0"
|
||||
) 2 0 88
|
||||
(
|
||||
#"((lib \"pict-snip.rkt\" \"drracket\" \"private\") (lib \"pict-snip.r"
|
||||
#"kt\" \"drracket\" \"private\"))\0"
|
||||
) 0 0 55
|
||||
#"((lib \"snip.rkt\" \"pict\") (lib \"snip-wxme.rkt\" \"pict\"))\0"
|
||||
1 0 34 #"(lib \"bullet-snip.rkt\" \"browser\")\0"
|
||||
0 0 25 #"(lib \"matrix.ss\" \"htdp\")\0"
|
||||
1 0 22 #"drscheme:lambda-snip%\0"
|
||||
1 0 29 #"drclickable-string-snipclass\0"
|
||||
0 0 26 #"drracket:spacer-snipclass\0"
|
||||
0 0 57
|
||||
#"(lib \"hrule-snip.rkt\" \"macro-debugger\" \"syntax-browser\")\0"
|
||||
1 0 26 #"drscheme:pict-value-snip%\0"
|
||||
0 0 45 #"(lib \"image-snipr.ss\" \"slideshow\" \"private\")\0"
|
||||
1 0 38 #"(lib \"pict-snipclass.ss\" \"slideshow\")\0"
|
||||
2 0 55 #"(lib \"vertical-separator-snip.ss\" \"stepper\" \"private\")\0"
|
||||
1 0 18 #"drscheme:xml-snip\0"
|
||||
1 0 31 #"(lib \"xml-snipclass.ss\" \"xml\")\0"
|
||||
1 0 21 #"drscheme:scheme-snip\0"
|
||||
2 0 34 #"(lib \"scheme-snipclass.ss\" \"xml\")\0"
|
||||
1 0 10 #"text-box%\0"
|
||||
1 0 32 #"(lib \"text-snipclass.ss\" \"xml\")\0"
|
||||
1 0 1 6 #"wxloc\0"
|
||||
0 0 81 0 1 #"\0"
|
||||
0 75 1 #"\0"
|
||||
0 10 90 -1 90 -1 3 -1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 255 255 255 1 -1 0 9
|
||||
#"Standard\0"
|
||||
0 75 12 #"Courier New\0"
|
||||
0 10 90 -1 90 -1 3 -1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 255 255 255 1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 -1 -1 2 24
|
||||
#"framework:default-color\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 150 0 150 0 0 0 -1 -1 2 15
|
||||
#"text:ports out\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 150 0 150 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1.0 0 -1 -1 93 -1 -1 -1 0 0 0 0 0 0 0 0 0 1.0 1.0 1.0 255 0 0 0 0 0 -1
|
||||
-1 2 15 #"text:ports err\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 93 -1 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 255 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 175 0 0 0 -1 -1 2 17
|
||||
#"text:ports value\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 175 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1.0 0 92 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1.0 1.0 1.0 34 139 34 0 0 0 -1
|
||||
-1 2 27 #"Matching Parenthesis Style\0"
|
||||
0 -1 1 #"\0"
|
||||
1.0 0 92 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1.0 1.0 1.0 34 139 34 0 0 0 -1
|
||||
-1 2 1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 38 38 128 0 0 0 -1 -1 2 37
|
||||
#"framework:syntax-color:scheme:symbol\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 38 38 128 0 0 0 -1 -1 2 38
|
||||
#"framework:syntax-color:scheme:keyword\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 38 38 128 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 194 116 31 0 0 0 -1 -1 2
|
||||
38 #"framework:syntax-color:scheme:comment\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 194 116 31 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 41 128 38 0 0 0 -1 -1 2 37
|
||||
#"framework:syntax-color:scheme:string\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 41 128 38 0 0 0 -1 -1 2 35
|
||||
#"framework:syntax-color:scheme:text\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 41 128 38 0 0 0 -1 -1 2 39
|
||||
#"framework:syntax-color:scheme:constant\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 41 128 38 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 132 60 36 0 0 0 -1 -1 2 49
|
||||
#"framework:syntax-color:scheme:hash-colon-keyword\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 132 60 36 0 0 0 -1 -1 2 42
|
||||
#"framework:syntax-color:scheme:parenthesis\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 132 60 36 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 255 0 0 0 0 0 -1 -1 2 36
|
||||
#"framework:syntax-color:scheme:error\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 255 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 36
|
||||
#"framework:syntax-color:scheme:other\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 16
|
||||
#"Misspelled Text\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 81 112 203 0 0 0 -1 -1 2
|
||||
38 #"drracket:check-syntax:lexically-bound\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 81 112 203 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 178 34 34 0 0 0 -1 -1 2 28
|
||||
#"drracket:check-syntax:set!d\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 178 34 34 0 0 0 -1 -1 2 37
|
||||
#"drracket:check-syntax:unused-require\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 255 0 0 0 0 0 -1 -1 2 36
|
||||
#"drracket:check-syntax:free-variable\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 255 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 68 0 203 0 0 0 -1 -1 2 31
|
||||
#"drracket:check-syntax:imported\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 68 0 203 0 0 0 -1 -1 2 47
|
||||
#"drracket:check-syntax:my-obligation-style-pref\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 178 34 34 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 116 0 0 0 0 -1 -1 2 50
|
||||
#"drracket:check-syntax:their-obligation-style-pref\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 116 0 0 0 0 -1 -1 2 48
|
||||
#"drracket:check-syntax:unk-obligation-style-pref\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 139 142 28 0 0 0 -1 -1 2
|
||||
49 #"drracket:check-syntax:both-obligation-style-pref\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 139 142 28 0 0 0 -1 -1 2
|
||||
26 #"plt:htdp:test-coverage-on\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 1 0 0 0 0 0 0 255 165 0 0 0 0 -1 -1 2 27
|
||||
#"plt:htdp:test-coverage-off\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 1 0 0 0 0 0 0 255 165 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 70 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 1.0 1.0 1.0 1.0 1.0 1.0 0 0 0 0 0 0
|
||||
-1 -1 4 4 #"XML\0"
|
||||
0 70 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 1.0 1.0 1.0 1.0 1.0 1.0 0 0 0 0 0 0
|
||||
-1 -1 2 37 #"plt:module-language:test-coverage-on\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 2 38
|
||||
#"plt:module-language:test-coverage-off\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 93 -1 -1 0 1 0 0 0 1 0 0 0 0 0 0 255 165 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 71 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 1.0 1.0 1.0 1.0 1.0 1.0 0 0 0 0 0 0
|
||||
-1 -1 4 1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 1 0 0 0 0 0 0 0 0 1.0 1.0 1.0 0 0 255 0 0 0 -1
|
||||
-1 4 1 #"\0"
|
||||
0 71 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 1 0 0 0 0 0 0 0 0 1.0 1.0 1.0 0 0 255 0 0 0 -1
|
||||
-1 4 1 #"\0"
|
||||
0 71 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1.0 1.0 1.0 0 100 0 0 0 0 -1
|
||||
-1 2 1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 200 0 0 0 0 0 -1 -1 4 32
|
||||
#"widget.rkt::browser-text% basic\0"
|
||||
0 70 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 1.0 1.0 1.0 1.0 1.0 1.0 0 0 0 0 0 0
|
||||
-1 -1 4 59
|
||||
#"macro-debugger/syntax-browser/properties color-text% basic\0"
|
||||
0 70 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 1.0 1.0 1.0 1.0 1.0 1.0 0 0 0 0 0 0
|
||||
-1 -1 57 1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 190 190 190 0 0 0 -1 -1 4
|
||||
1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 255 0 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 255 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 107 142 35 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 100 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 139 0 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 100 149 237 0 0 0 -1 -1 4
|
||||
1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 65 105 225 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 70 130 180 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 47 79 79 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 139 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 75 0 130 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 160 32 240 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 255 165 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 250 128 114 0 0 0 -1 -1 4
|
||||
1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 184 134 11 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 128 128 0 0 0 0 -1 -1 4 1
|
||||
#"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 169 169 169 0 0 0 -1 -1 4
|
||||
1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1.0 0 -1 -1 -1 -1 -1 -1 1 0 0 0 0 0 0 0 0 1.0 1.0 1.0 0 0 0 0 0 0 -1 -1
|
||||
4 1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 255 228 225 -1 -1 4
|
||||
1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1 0 -1 -1 -1 -1 -1 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 224 255 255 -1 -1 4
|
||||
1 #"\0"
|
||||
0 -1 1 #"\0"
|
||||
1.0 0 92 -1 -1 -1 -1 -1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 255 255 0 -1 -1
|
||||
0 142 0 28 3 12 #"#lang racket"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 15 3 7 #"require"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 19 3 12 #"\"../lib.rkt\""
|
||||
0 0 24 3 1 #")"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 9 1651 21 0 0 0 274 0 14 3 3 #"DAY"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"1:"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"The"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 7 #"Tyranny"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"of"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 6 #"Rocket"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 8 #"Equation"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 7 #"excerpt"
|
||||
0 0 24 3 1 #")"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 4 #"PART"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"1:"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 3 #"..."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 4 #"Fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 8 #"required"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"to"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 6 #"launch"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 1 #"a"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"given"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 6 #"module"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"is"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"based"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"on"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"its"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"mass."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 12 #"Specifically"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"to"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"find"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 8 #"required"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 3 #"for"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 1 #"a"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 6 #"module"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"take"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"its"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 6 #"divide"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"by"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"three"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"round"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"down"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"and"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 8 #"subtract"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 21 3 2 #"2."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 3 #"..."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 4 #"What"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"is"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"sum"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"of"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 12 #"requirements"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 3 #"for"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"all"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"of"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 7 #"modules"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 2 #"on"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"your"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 11 #"spacecraft?"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 4 #"PART"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"2:"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 3 #"..."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 2 #"So"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 3 #"for"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"each"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 6 #"module"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 9 #"calculate"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"its"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"and"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"add"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"it"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"to"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 6 #"total."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 4 #"Then"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"treat"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 6 #"amount"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"you"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"just"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 10 #"calculated"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"as"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"input"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 3 #"and"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 6 #"repeat"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 7 #"process"
|
||||
0 0 28 3 1 #","
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 10 #"continuing"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"until"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 1 #"a"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 11 #"requirement"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"is"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"zero"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 2 #"or"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 9 #"negative."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 3 #"..."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 4 #"What"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"is"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"sum"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"of"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 12 #"requirements"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 3 #"for"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"all"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"of"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 7 #"modules"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 2 #"on"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"your"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 10 #"spacecraft"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 15 3 4 #"when"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"also"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 6 #"taking"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"into"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 7 #"account"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 2 #"of"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 3 #"the"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 14 3 5 #"added"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"fuel?"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 15 3 6 #"define"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"input"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 3 #"map"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 14 #"string->number"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 13 #"problem-input"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 21 3 1 #"1"
|
||||
0 0 24 3 3 #")))"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 17 3 31 #";; calc-fuel : number -> number"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 15 3 6 #"define"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 9 #"calc-fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 24 3 1 #")"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 3 #" ("
|
||||
0 0 14 3 1 #"-"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 5 #"floor"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 1 #"/"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 21 3 1 #"3"
|
||||
0 0 24 3 3 #")) "
|
||||
0 0 21 3 1 #"2"
|
||||
0 0 24 3 2 #"))"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 15 3 6 #"define"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"part1"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 3 #" ("
|
||||
0 0 14 3 3 #"sum"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 3 #"map"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 9 #"calc-fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"input"
|
||||
0 0 24 3 3 #")))"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 17 3 35 #";; calc-fuel-rec : number -> number"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 17 3 35 #";; Calculate the fuel given a mass,"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 17 3 44 #";; then add the fuel required for THAT fuel,"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 17 3 54 #";; and so on until the fuel required is 0 or negative,"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 17 3 39 #";; for which the fuel should just be 0."
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 15 3 6 #"define"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 13 #"calc-fuel-rec"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 24 3 1 #")"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 3 #" ("
|
||||
0 0 15 3 3 #"let"
|
||||
0 0 24 3 3 #" (["
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 9 #"calc-fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"mass"
|
||||
0 0 24 3 3 #")])"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 5 #" ("
|
||||
0 0 14 3 2 #"if"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 2 #"<="
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 21 3 1 #"0"
|
||||
0 0 24 3 2 #") "
|
||||
0 0 21 3 1 #"0"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 9 #" ("
|
||||
0 0 14 3 1 #"+"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 13 #"calc-fuel-rec"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 4 #"fuel"
|
||||
0 0 24 3 5 #")))))"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 15 3 6 #"define"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"part2"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 3 #" ("
|
||||
0 0 14 3 3 #"sum"
|
||||
0 0 24 3 2 #" ("
|
||||
0 0 14 3 3 #"map"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 13 #"calc-fuel-rec"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"input"
|
||||
0 0 24 3 3 #")))"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 29 1 #"\n"
|
||||
0 0 24 3 1 #"("
|
||||
0 0 14 3 13 #"show-solution"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"part1"
|
||||
0 0 24 3 1 #" "
|
||||
0 0 14 3 5 #"part2"
|
||||
0 0 24 3 1 #")"
|
||||
0 0
|
Loading…
Reference in New Issue