
'''simple docstring'''







from math import factorial







def 				SCREAMING_SNAKE_CASE__	(   __A			,				__A			,				__A	)       ->	float:
	if successes > trials:
		raise ValueError('successes must be lower or equal to trials'	)
	if trials < 0 or successes < 0:
		raise ValueError('the function is defined for non-negative integers'	)
	if not isinstance(__A			,				__A	) or not isinstance(__A			,				__A	):
		raise ValueError('the function is defined for non-negative integers'	)
	if not 0 < prob < 1:
		raise ValueError('prob has to be in range of 1 - 0'	)
	_snake_case   						=		(prob**successes) * ((1 - prob) ** (trials - successes))
	# Calculate the binomial coefficient: n! / k!(n-k)!
	_snake_case   						=		float(factorial(__A	)	)
	coefficient /= factorial(__A	) * factorial(trials - successes	)
	return probability * coefficient


if __name__ == "__main__":
					from doctest import testmod

					testmod()
					print("Probability of 2 successes out of 4 trails")
					print("with probability of 0.75 is:", end=" ")
					print(binomial_distribution(2, 4, 0.75))



'''simple docstring'''







def 				SCREAMING_SNAKE_CASE__	(   __A = 100	)       ->	int:
	_snake_case   						=		n * (n + 1) * (2 * n + 1) / 6
	_snake_case   						=		(n * (n + 1) / 2) ** 2
	return int(square_of_sum - sum_of_squares	)


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

