본문 바로가기

Algorithm/Implementation

(Python3) - 프로그래머스(코딩테스트 입문) : 삼각형의 완성조건 (2)

반응형

https://school.programmers.co.kr/learn/courses/30/lessons/120868

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

간단 산수 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

편의를 위해 오름차순으로 sides를 정렬해줍니다.

📔 풀이과정

다른 한변 answer는 두 가지 경우가 있을 수 있습니다.

1. 가장 긴 변인 경우

sides[1]가 두 번째로 긴 변이므로 이보다 크면서 sides[0] + sides[1] 보다 작은 범위가 값이므로 sides[0] - 1만큼이 가능합니다.

 

2. 나머지 두 변 중 한 변인 경우

answer + sides[0] > sides[1]이어야 하므로 sides[1] - sides[0] + 1이상 sides[1]이하이므로 sides[1] - (sides[1] - sides[0] + 1) + 1만큼이 가능합니다.

 

1경우와 2경우를 합치면 sides[0] * 2 - 1이 값이 됩니다.

📔 정답 출력 | 반환

sides[0] * 2 - 1를 반환합니다.


📕 Code

📔 Python3

def solution(sides):
    sides.sort()
    return sides[0] + sides[0] - 1

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.