






import os

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







def 					SCREAMING_SNAKE_CASE    (			):
	snake_case__			:				Optional[int]       =  os.path.dirname(os.path.realpath(snake_case_       )       )
	snake_case__			:				Optional[int]       =  os.path.join(snake_case_					,  "words.txt"       )

	snake_case__			:				Optional[int]       =  ""
	with open(snake_case_       ) as f:
		snake_case__			:				int       =  f.readline()

	snake_case__			:				Dict       =  [word.strip("\""       ) for word in words.strip("\r\n"       ).split(","       )]
	snake_case__			:				str       =  [
	    word
	    for word in [sum(ord(snake_case_       ) - 64 for x in word       ) for word in words]
	    if word in TRIANGULAR_NUMBERS
	]
	return len(snake_case_       )


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











from __future__ import annotations







def 					SCREAMING_SNAKE_CASE    (			snake_case_ :							float					,  snake_case_ :							float					,  snake_case_ :							float       ):
	if days_between_payments <= 0:
		raise ValueError("days_between_payments must be > 0"       )
	if daily_interest_rate < 0:
		raise ValueError("daily_interest_rate must be >= 0"       )
	if principal <= 0:
		raise ValueError("principal must be > 0"       )
	return principal * daily_interest_rate * days_between_payments







def 					SCREAMING_SNAKE_CASE    (			snake_case_ :							float					,  snake_case_ :							float					,  snake_case_ :							float					,  ):
	if number_of_compounding_periods <= 0:
		raise ValueError("number_of_compounding_periods must be > 0"       )
	if nominal_annual_interest_rate_percentage < 0:
		raise ValueError("nominal_annual_interest_rate_percentage must be >= 0"       )
	if principal <= 0:
		raise ValueError("principal must be > 0"       )

	return principal * (
	    (1 + nominal_annual_interest_rate_percentage) ** number_of_compounding_periods
	    - 1
	)







def 					SCREAMING_SNAKE_CASE    (			snake_case_ :							float					,  snake_case_ :							float					,  snake_case_ :							float					,  ):
	if number_of_years <= 0:
		raise ValueError("number_of_years must be > 0"       )
	if nominal_annual_percentage_rate < 0:
		raise ValueError("nominal_annual_percentage_rate must be >= 0"       )
	if principal <= 0:
		raise ValueError("principal must be > 0"       )

	return compound_interest(
	    snake_case_					,  nominal_annual_percentage_rate / 365					,  number_of_years * 365       )


if __name__ == "__main__":
	import doctest

	doctest.testmod()



