728x90
반응형
https://www.acmicpc.net/problem/10867
문제를 풀면서 몰랐던 개념
[Python] 리스트 중복 제거
-> set 자료형(집합)을 이용해야 한다.
: 리스트의 중복을 제거하되 기존 리스트의 순서를 유지하는 경우에는 여러가지 방법이 존재하는데, 그 중 sorted() 함수를 이용하는 방법에 대해 알게 되었다.
L = [2, 3, 2, 2, 4, 5, 1]
L = sorted(set(L))
print(L)
>>> [1, 2, 3, 4, 5]
문제의 접근 방법
- n개의 정수 입력 받아 리스트에 저장하기
- 중복을 제거하고 정렬하여 출력하기
내가 막혔던 부분
리스트 중복 제거 방법을 알지 못함.
문제 풀이 방법
(1) 입력 받을 정수의 개수 n개 입력 받기.
(2) map함수를 사용해서 n개의 정수 따로따로 입력받아 리스트 L에 저장.
(3) 리스트 L을 set 자료형을 이용해서 중복을 제거한 후, sorted 함수를 이용해서 정렬.
소스코드
n = int(input())
L = list(map(int, input().split()))
if n == len(L) and (1<=n<=100,000):
L = sorted(set(L))
for i in L:
print(i, end=' ')
728x90
반응형
'백준 write-up > 정렬 & 그리디' 카테고리의 다른 글
[백준] N번째 큰 수 : 2693번 - Python (0) | 2021.07.18 |
---|---|
[백준] 시리얼 번호 : 1431번 - Python (0) | 2021.07.17 |
[백준] 점수 계산 : 2822번 - Python (0) | 2021.07.16 |
[백준] 접미사 배열 : 11656번 - Python (0) | 2021.07.16 |
[백준] 보물 : 1026번 - Python (0) | 2021.07.16 |