BOJ - 1431

주의·2024년 1월 25일
0

boj

목록 보기
109/214

백준 문제 링크
시리얼 번호

❓접근법

  1. 시리얼 번호를 받고, 그 시리얼 번호 안의 숫자를 다 더한 것을 sum_value로 지정한다.
    num이라는 리스트에 [시리얼 번호, sum_value]를 넣어준다.
  2. num을 다음 3가지를 기준으로 차례대로 정렬한다.
    시리얼 번호의 길이, 자리수의 합(sum_value), 시리얼 번호 사전 순
  3. 정렬된 시리얼 번호를 출력하면 끝

👌🏻코드

N = int(input())

num = []
for _ in range(N):
    x = input()
    sum_value = 0
    for i in x:
        if i.isdigit() == True:
            sum_value += int(i)
            
    num.append([x,sum_value])
    
answer = sorted(num, key = lambda x: (len(x[0]), x[1], x[0]))

for i in answer:
    print(i[0])

0개의 댓글