시도한 내용 😂
- 파이썬에 내장된 sorted와 sort함수를 통해 sorting하는 법을 아는 나에겐 어렵지않았다.
- sorted의 key를 이용해서 custom sorting이 가능하다.
코드 😀
import sys
n = int(sys.stdin.readline().rstrip())
arr = []
for i in range(0, n):
arr.append(sys.stdin.readline().rstrip())
def isDigit(str):
try:
int(str)
return True
except ValueError:
return False
def addInt(serialNum):
sum = 0
for i in range(0, len(serialNum)):
if isDigit(serialNum[i]):
sum += int(serialNum[i])
return sum;
arr = sorted(arr, key=lambda x : (len(x), addInt(x), x))
for i in range(0, len(arr)):
print(arr[i])
알게된 내용 😁
- lambda표현식으로 함수 쉽게 표현하는 법을 배움.
- try except로 파이썬에서 예외처리 하는 법을 배움.
- sorted의 key를 통해서 custom sorting하는 법을 배움 -> 이걸로 여러 조건의 sorting문제를 풀수있다.