백준 1181 - 단어 정렬(파이썬)

박진우·2022년 10월 16일
0

알고리즘

목록 보기
41/89

💡백준 1181 - 단어 정렬

◽ 문제





◽ 입력 & 출력




◽ 풀이

✅요약

    1. 길이가 짧은 것부터
    1. 길이가 같으면 사전 순으로 정렬
    1. 단 중복 제거

  • 4번째 줄: 여러개의 단어를 입력받을 것이니 sys모듈 사용했다.

  • 6번째 줄: n개의 개수만큼 입력받은 단어를 저장할 빈 리스트 선언.


  • 8~9번째 줄: 빈 리스트 word에 입력받은 단어append()해준다.

예제의 입력대로 문자를 입력하면 다음과 같이 출력된다.




11번째 줄: 문제에서 같은 단어가 여러 번 입력된 경우에는 한 번씩만 출력 하라고 했기 때문에 중복 제거를 위한 set()형으로 바꿔주고 다시 list로 묶어준다.

예제의 입력대로 문자를 입력하면 다음과 같이 출력된다.

  • set()형 이기 때문에 출력해보면 매번 요소의 순서가 다르게 나옵니다.



12번째 줄: 11번째 줄에서 중복제거를 해주었던 word를 알파벳 순으로 정렬한다.

예제의 입력대로 문자를 입력하면 다음과 같이 출력된다.




13번째 줄: 마지막으로 sort()함수의 key를 len으로 설정하여 길이 순서대로 정렬한다.

예제의 입력대로 문자를 입력하면 다음과 같이 출력된다.



  • 15~16번째 줄: 최종적으로 정렬된 단어를 출력하면 다음과 같다.


✅ 정렬 순서 요약




✅ 최종 풀이




💡 배운점

◽ sort(key=len)

✨ 리스트 요소를 길이 순으로 정렬할 때는 sort 메소드에서 key=len 을 입력

❗요소 = 문자열 or 리스트

0개의 댓글