<--- 리트코드 937. Reorder Log Files --->
# 문제: 로그를 재정렬하라. 기준은 다음과 같다.
1. 로그의 가장 앞 부분은 식별자다.
2. 문자로 구성된 로그가 숫자 로그보다 앞에온다.
3. 식별자는 순서에 영향을 끼치지 않지만, 문자가 동일할 경우 식별자 순으로 한다.
4. 숫자 로그는 입력 순서대로 한다.
입력
["digl 8 1 5 1", "letl art can", "dig2 3 6", "let2 own kit dig", "let3 art zero"] |
출력
["letl art can", "let3 art zero", "let2 own kit dig", "digl 8 1 5 1", "dig2 3 6"] |
# 풀이
1. 람다와 + 연산자 이용
1
2
3
4
5
6
7
8
9
10
11
12
|
def reorder_log_files(logs):
letters, digits = [], []
for log in logs:
if log.split()[1].isdigit():
digits.append(log)
else:
letters.append(log)
print(letters)
letters.sort(key=lambda x: (x.split()[1:], x.split()[0]))
return letters + digits
|
cs |
'Python' 카테고리의 다른 글
파이썬 알고리즘 인터뷰 - 05. 그룹 에너그램 (0) | 2022.01.10 |
---|---|
파이썬 알고리즘 인터뷰 - 04. 가장 흔한 단어 (0) | 2022.01.10 |
파이썬 알고리즘 인터뷰 - 02. 문자열 뒤집기 (0) | 2022.01.05 |
파이썬 알고리즘 인터뷰 - 01. 유효한 팰린드롬 (0) | 2022.01.05 |
CentOS 7 환경 Python3 소스 설치 (0) | 2020.07.07 |