Algorithm/백준

[백준 알고리즘] 1431번: 시리얼 번호 (Python)

에릭 Kim 2023. 10. 20. 14:45
반응형

https://www.acmicpc.net/problem/1431

 

1431번: 시리얼 번호

첫째 줄에 기타의 개수 N이 주어진다. N은 50보다 작거나 같다. 둘째 줄부터 N개의 줄에 시리얼 번호가 하나씩 주어진다. 시리얼 번호의 길이는 최대 50이고, 알파벳 대문자 또는 숫자로만 이루어

www.acmicpc.net

 

소스코드

 

 

풀이

★ 문제에서 주어진 조건대로 시리얼 번호를 정렬해야 합니다. sort 안에서 lambda함수를 통해 정렬을 진행하는데, 

1번 조건은 len() 함수로 시리얼번호의 길이를 비교해줍니다. 

 

2번 조건의 경우에는 내장함수로 정렬할 수 없기에 직접 확인해줘야 합니다 ! 저는 주어진 시리얼 번호를 읽으면서 자릿수의 숫자일 경우 그 합을 시리얼 번호의 마지막에 추가해줬습니다. 이를 사용해 lambda 안에서 정렬을 해줍니다. 

 

3번 조건의 경우에도 시리얼 번호 자체를 가지고 정렬을 진행해주면 됩니다 ! 

 

출력할 때는 이전에 추가해 둔 자릿수의 합을 제거해준 뒤, 공백없이 번호를 출력해줍니다 :)  

반응형