선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다.
삼각형의 두 변의 길이가 담긴 배열 sides
이 매개변수로 주어집니다. 나머지 한 변이 될 수 있는 정수의 개수를 return하도록 solution 함수를 완성해주세요.
sides
sides
sides
sides | result |
---|---|
[1, 2] | 1 |
[3, 6] | 5 |
[11, 7] | 13 |
입출력 예 #1
입출력 예 #2
입출력 예 #3
def solution(sides):
answer = 0
# 주어진 변에 가장 긴 변이 있을 때
# 가장 긴 변 <= 나머지 두 변의 합
# 나머지 한 변 <= 가장 긴 변
# 나머지 한 변이 가장 긴 변일 때
# 주어진 선 중 가장 긴 변 < 가장 긴 변 < 주어진 두 변의 합
# 주어진 선에 가장 긴 선이 있을 때
max_side = max(sides)
min_side = min(sides)
other_side = []
for i in range(1, max_side+1):
if max(sides) < i + min(sides):
if i <= max(sides):
other_side.append(i)
# 나머지 한 선이 가장 긴 선일 때
for i in range(max(sides)+1, sum(sides)):
if max(sides) < i < sum(sides):
other_side.append(i)
print(other_side, len(other_side))
answer = len(other_side)
return answer
https://school.programmers.co.kr/learn/courses/30/lessons/120868?language=python3