Skip to content
programming languages for all
GitHub

Difference of Squares in Python

문제

Difference of Squares in PythonFind the difference between the square of the sum and the sum of the squares of the first N natural numbers.

참고할 자료와 개념

풀이된 예제

명령형

def square_of_sum(number):
	total = 0
	for n in range(1, number + 1):
		total += n
	return total * total

def sum_of_squares(number):
	result = 0
	for n in range(1, number + 1):
		result += n * n
	return result

def difference_of_squares(number):
	return square_of_sum(number) - sum_of_squares(number)

pythonic iterartor

def square_of_sum(number):
	return sum(range(1, number + 1)) ** 2

def sum_of_squares(number):
	return sum(n * n for n in range(1, number + 1))

def difference_of_squares(number):
	return square_of_sum(number) - sum_of_squares(number)

map과 lambda

def square_of_sum(number):
	return sum(range(1, number + 1)) ** 2

def sum_of_squares(number):
	return sum(map(lambda n: n * n, range(1, number + 1)))

def difference_of_squares(number):
	return square_of_sum(number) - sum_of_squares(number)

수학

def square_of_sum(number):
	return (n * (n + 1) / 2) ** 2

def sum_of_squares(number):
	return n * (n + 1) * (2 * n + 1) / 6

def difference_of_squares(number):
	return square_of_sum(number) - sum_of_squares(number)