


from __future__ import annotations

import math
from collections.abc import Callable
def        UpperCamelCase_(				_A   :Callable[[int | float], int | float]				,     _A   :int | float				,     _A   :int | float				,     _A   :int = 1_00				,     )->		float:
			UpperCamelCase__					=       x_start
			UpperCamelCase__					=       fnc(_A  )
			UpperCamelCase__					=       0.0

			for _ in range(_A  ):
						# Approximates curve as a sequence of linear lines and sums their length
						UpperCamelCase__					=       (x_end - x_start) / steps + xa
						UpperCamelCase__					=       fnc(_A  )
						length += math.hypot(xa - xa				,     fxa - fxa  )

						# Increment step
						UpperCamelCase__					=       xa
						UpperCamelCase__					=       fxa

			return length


if __name__ == "__main__":
						def        UpperCamelCase_(				_A   :Dict  )->		str:
									return math.sin(10 * x  )

						print('f(x) = sin(10 * x)')
						print('The length of the curve from x = -10 to x = 10 is:')
						__UpperCamelCase    		=       1_0
						while i <= 1_0_0_0_0_0:
												print(f'''With {i} steps: {line_length(f, -1_0, 1_0, i)}''')
												i *= 1_0






from __future__ import annotations
def        UpperCamelCase_(				_A   :list[int]				,     _A   :int  )->		list[int]:
			UpperCamelCase__					=       0
			UpperCamelCase__					=       len(_A  ) - 1

			while i < j:
						if nums[i] + nums[j] == target:
									return [i, j]
						elif nums[i] + nums[j] < target:
									UpperCamelCase__					=       i + 1
						else:
									UpperCamelCase__					=       j - 1

			return []


if __name__ == "__main__":
						import doctest

						doctest.testmod()
						print(f'''{two_pointer([2, 7, 1_1, 1_5], 9) = }''')


