관리 메뉴

오늘도 배운다

각도기 / 프로그래머스, 파이썬 코딩테스트 연습 코딩테스트 입문 본문

코딩테스트연습(파이썬)

각도기 / 프로그래머스, 파이썬 코딩테스트 연습 코딩테스트 입문

LearnerToRunner 2022. 11. 22. 11:55

문제

각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 
angle 이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.

 

 

제출답안

def solution(angle):
	# 90도 이하인 경우
    if 0 < angle <= 90:
        answer = 2 if angle == 90 else 1
    # 90도 초과인 경우
    else:
        answer = 4 if angle == 180 else 3
    
    return answer

 

 

제출 후 개선답안

다른 사람의 답변을 보니 1, 2, 3, 4 결과값을 주는 패턴을 수학적으로 활용
너무 인상 깊어서 서병일, 아나가님의 코드를 남김. 
(아래 코드는 본인의 코드가 아님을 분명히 함)

def solution(angle):
    answer = (angle // 90) * 2 + (angle % 90 > 0) * 1
    return answer

 

 

문제 바로가기

 

728x90
Comments