Skip to content

Commit 1da178b

Browse files
committed
implement newman_conway
1 parent 88fcabb commit 1da178b

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

lib/newman_conway.rb

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
1-
2-
3-
# Time complexity: ?
4-
# Space Complexity: ?
1+
# Time complexity: O(n)
2+
# Space Complexity: O(n)
53
def newman_conway(num)
6-
raise NotImplementedError, "newman_conway isn't implemented"
4+
raise ArgumentError.new("Input must be an integer greater than zero") if num < 1
5+
return "1" if num == 1
6+
nums = {}
7+
nums[1] = 1
8+
nums[2] = 1
9+
n = 3
10+
while n <= num
11+
nums[n] = nums[nums[n - 1]] + nums[n - nums[n - 1]]
12+
n += 1
13+
end
14+
return nums.values.join(" ")
715
end

0 commit comments

Comments
 (0)