





import os

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





def 	lowerCAmelCase_					(			)	->						List[str]:







  """simple docstring"""





  lowerCamelCase__: Optional[Any]         =os.path.dirname(os.path.realpath(__a						)						)
  lowerCamelCase__: Optional[int]         =os.path.join(__a      ,       "words.txt"						)

  lowerCamelCase__: Dict         =""
  with open(__a						) as f:
    lowerCamelCase__: int         =f.readline()

  lowerCamelCase__: Any         =[word.strip("\""						) for word in words.strip("\r\n"						).split(","						)]
  lowerCamelCase__: Optional[Any]         =[
      word
      for word in [sum(ord(__a						) - 64 for x in word						) for word in words]
      if word in TRIANGULAR_NUMBERS
  ]
  return len(__a						)


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




import math


def 					_UpperCAmelCase				(						a__ = 1_0_0):

			'''simple docstring'''



			a_						:						List[str] 							= sum(i * i for i in range(1  ,	n + 1))
			a_						:						Optional[Any] 							= int(math.pow(sum(range(1  ,	n + 1))  ,	2))
			return square_of_sum - sum_of_squares


if __name__ == "__main__":
	print(F"""{solution() = }""")


