관리 메뉴

100세까지 코딩

[백준] 2480번 주사위 세개 (파이썬) 본문

코딩테스트/파이썬

[백준] 2480번 주사위 세개 (파이썬)

100세까지 코딩 2024. 1. 6. 13:08
문제

나의 생각
  • 입력값을 list로 받는다.
  • 같은 눈이 3개인 경우, 2개인 경우, 모두 다른 경우 분기점으로 나눈다.
  • 모두 다른 경우 가장 큰 눈을 구하는 것은 list를 정렬해서 첫 번째 값을 뽑는다.
나의 풀이 (정렬)
list_A = list(map(int,input().split()))
list_A.sort(reverse=True)

if list_A[0]==list_A[1]==list_A[2]:
    result = 10000 + list_A[0] * 1000
elif list_A[0]==list_A[1] or list_A[0]==list_A[2]:
    result = 1000+list_A[0]*100
elif list_A[1]==list_A[2]:
    result = 1000+list_A[1]*100
else:
    result = list_A[0]*100

print(result)

 

나의 풀이 2 (max 함수)
list_A = list(map(int,input().split()))


if list_A[0]==list_A[1]==list_A[2]:
    result = 10000 + list_A[0] * 1000
elif list_A[0]==list_A[1] or list_A[0]==list_A[2]:
    result = 1000+list_A[0]*100
elif list_A[1]==list_A[2]:
    result = 1000+list_A[1]*100
else:
    result = max(list_A)*100

print(result)

 

참고
다른 언어와 다르게 파이썬은 역순으로 정렬할 때 .sort(reverse=True)를 해주면 된다.
max() 함수를 써서 가장 큰 값을 뽑아내는 방법도 있다.
참고 2
max()
        1. 최댓값을 반환해 주는 함수
        2. 문자열이면 알파벳 순서 상 뒤에 오는 문자 반환
        3. 매개 변수로 리스트, 객체 가능