Given a string of integers, return the number of odd-numbered substrings that can be formed. 

For example, in the case of `"1341"`, they are `1, 1, 3, 13, 41, 341, 1341`, a total of `7` numbers. 

`solve("1341") = 7`.  See test cases for more examples.

Good luck!

If you like substring Katas, please try 

[Longest vowel chain](https://www.codewars.com/kata/59c5f4e9d751df43cf000035)

[Alphabet symmetry](https://www.codewars.com/kata/59d9ff9f7905dfeed50000b0)

Difficulty: introductory

Starter code:

def solve(s):
	

Solutions:
def solve(s):
    return sum(i+1 for i,d in enumerate(list(s)) if d in '13579')

def solve(s):
    return sum( int(c)%2 for i in range(len(s)) for c in s[i:] )

import itertools

# Walk through s from left to right. If the current digit is odd,
# It can create odd substrings with every previous digit.
# The total number of substrings that can be made at each digit
# location is (1 + digit_index)
def solve(s):
    return sum([i + 1 for i, d in enumerate(s) if d in '13579'])

def solve(s):
    return sum([idx + 1 for idx, digit in enumerate(s) if int(digit) % 2 != 0])

def solve(s):
    return sum(i for i, n in enumerate(s, 1) if int(n) % 2)

def solve(s):
    return sum(i for i, x in enumerate(s, 1) if x in '13579')

def solve(s):
    return sum(len(s)- i for i,j in enumerate(s[::-1]) if int(j)%2==1)

def solve(s):
    return sum(i for i, c in enumerate(s, 1) if c in "13579")

from itertools import combinations 

def solve(s):
    res = [s[x:y] for x, y in combinations( list(range(len(s) + 1)), r = 2)] 
    re=[int(x) for x in res]
    r=[ (x) for x in re if x %2!=0]
    return(len(r))


solve = lambda Q : sum(1 + F if 1 & int(V) else 0 for F,V in enumerate(Q))