summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--2020/08/22/main.rb35
1 files changed, 35 insertions, 0 deletions
diff --git a/2020/08/22/main.rb b/2020/08/22/main.rb
new file mode 100644
index 0000000..6042464
--- /dev/null
+++ b/2020/08/22/main.rb
@@ -0,0 +1,35 @@
+def assert_equal(x, y)
+ raise [x, y].inspect unless x == y
+end
+
+class MaxStack
+ def initialize
+ @items = []
+ end
+
+ def push(value)
+ @items.push(value)
+ end
+
+ def pop
+ @items.pop
+ end
+
+ def max
+ @items.max
+ end
+end
+
+stack = MaxStack.new
+stack.push(1)
+stack.push(2)
+stack.push(3)
+stack.push(2)
+
+assert_equal 3, stack.max
+
+stack.pop
+stack.pop
+assert_equal 2, stack.max
+
+puts 'Yay!'