aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-100/richard-park/apl/ch-1.aplf8
-rw-r--r--challenge-100/richard-park/apl/ch-2.aplf10
2 files changed, 18 insertions, 0 deletions
diff --git a/challenge-100/richard-park/apl/ch-1.aplf b/challenge-100/richard-park/apl/ch-1.aplf
new file mode 100644
index 0000000000..9f866cd7cd
--- /dev/null
+++ b/challenge-100/richard-park/apl/ch-1.aplf
@@ -0,0 +1,8 @@
+ FunTime←{
+ ⎕IO←1
+ 'ap'∨/⍤∊⍵:' ?am' ' ?pm'⎕R''⊢'\d+:'⎕R{':',⍨'0'@(' '∘=)¯2↑⍕12+⍣('p'∊⍵.Block)⊢⍎¯1↓⍵.Match}⊢⍵
+ num←⍎¨':'(≠⊆⊢)⍵
+ suffix←' am' ' pm'⊃⍨1+~12 60∧.>num
+ time←⊃(⊣,':',⊢)/'0'@(' '∘=)¨¯2↑∘⍕¨12 60|num
+ time,suffix
+ }
diff --git a/challenge-100/richard-park/apl/ch-2.aplf b/challenge-100/richard-park/apl/ch-2.aplf
new file mode 100644
index 0000000000..df0ec84357
--- /dev/null
+++ b/challenge-100/richard-park/apl/ch-2.aplf
@@ -0,0 +1,10 @@
+ TriangleSum←{
+ ⍺←0
+ row←⊃⍵
+ 2≥≢row:(⍺+row)∇ 1↓⍵
+ 0∊⍴⍵:⍺
+ coeffs←1,1,⍨2⍴⍨¯2+≢row
+ k←coeffs/⍳≢row
+ sums←+⌿↑(⍺⌿⍨2⍴⍨≢⍺)(coeffs/row)
+ ⌊/(k{⌊/⍵}⌸sums)∇ 1↓⍵
+ }