So, I also realized its the fibonacci sequence for number of combinations of numbers. All I care about is counting sequential digits, we skip a character after every sequence. We just need to account for if the first character is a number and we are good. I did this in ruby. I didn't really try for anything bonus points wise.
Pastebin because formatting doesn't like &
or <
My code also outputs 0
if the sequence itself is invalid(ends on a non-digit character, or has two non-digit characters in a row)
Without memoization, I believe the Fibonacci sequence is O(2^N). It's dependent on how long a sequence of digits is in the input, so your worst case is like O(2^N) if the string is mostly digits and best case being O(N) if there are only 1 or 2 digit sequences.
Someone can correct me if I'm wrong.