

'''simple docstring'''

def 							_UpperCamelCase				(   lowerCAmelCase__:					List[Any]		,lowerCAmelCase__:					Optional[Any]   )      -> Tuple:
							SCREAMING_SNAKE_CASE_				=				[0 for i in range(r + 1   )]
							# nc0 = 1
							SCREAMING_SNAKE_CASE_				=				1
							for i in range(1		,n + 1   ):
														# to compute current row from previous row.
														SCREAMING_SNAKE_CASE_				=				min(lowerCAmelCase__		,lowerCAmelCase__   )
														while j > 0:
																					c[j] += c[j - 1]
																					j -= 1
							return c[r]




print(binomial_coefficient(n=10, r=5))








'''simple docstring'''

import os

# Precomputes a list of the 100 first triangular numbers
SCREAMING_SNAKE_CASE							:				List[Any]     	=			[int(0.5 * n * (n + 1)) for n in range(1, 101)]




def 							_UpperCamelCase				(   )      -> List[Any]:
							SCREAMING_SNAKE_CASE_				=				os.path.dirname(os.path.realpath(lowerCAmelCase__   )   )
							SCREAMING_SNAKE_CASE_				=				os.path.join(lowerCAmelCase__		,'words.txt'   )

							SCREAMING_SNAKE_CASE_				=				''
							with open(lowerCAmelCase__   ) as f:
														SCREAMING_SNAKE_CASE_				=				f.readline()

							SCREAMING_SNAKE_CASE_				=				[word.strip('"'   ) for word in words.strip('\r\n'   ).split(','   )]
							SCREAMING_SNAKE_CASE_				=				[
							    word
							    for word in [sum(ord(lowerCAmelCase__   ) - 64 for x in word   ) for word in words]
							    if word in TRIANGULAR_NUMBERS
							]
							return len(lowerCAmelCase__   )


if __name__ == "__main__":
							print(solution())





