갬미의 성장일기
[이것이 코딩테스트다] 6일차 - 백준 치킨배달 본문
본문은 [이것이 취업을 위한 코딩테스트다 - 나동빈] 책을 공부하고 작성한 글입니다.
Chapter 4 구현 알고리즘 문제 풀이(3)
오늘 풀이한 문제는 다음이다
[ 백준 15686 ] 치킨 배달
파이썬 라이브러리 중 하나인 itertools를 알고 있다면 무난히 풀 수 있는 문제인 것 같다
## Python3 itertools
# 순열, 조합, 곱집합 구하기
from itertools import permutations, combinations, product
items = ['1', '2', '3', '4', '5']
# 순열
print (list(permutations(items,2))) ## permutations(조합을 만들고자 하는 리스트, 조합 내 숫자의 수)
# [('1', '2'), ('1', '3'), ('1', '4'), ('1', '5'), ('2', '1'), ('2', '3'), ('2', '4'), ('2', '5'), ('3', '1'), ('3', '2'), ('3', '4'), ('3', '5'), ('4', '1'), ('4', '2'), ('4', '3'), ('4', '5'), ('5', '1'), ('5', '2'), ('5', '3'), ('5', '4')]
# 조합
print (list(combinations(items,2)))
# [('1', '2'), ('1', '3'), ('1', '4'), ('1', '5'), ('2', '3'), ('2', '4'), ('2', '5'), ('3', '4'), ('3', '5'), ('4', '5')]
## 두개 이상의 리스트의 모든 조합
items = [['a', 'b', 'c,'], ['1', '2', '3', '4']]
print (list(product(*items)))
## [('a', '1'), ('a', '2'), ('a', '3'), ('a', '4'), ('b', '1'), ('b', '2'), ('b', '3'), ('b', '4'), ('c,', '1'), ('c,', '2'), ('c,', '3'), ('c,', '4')]
구현 연습문제 풀이는 깃허브에 업로드하였습니다
'Algorithm > Algorithm Study' 카테고리의 다른 글
[이것이 코딩테스트다] 8일차 - 미로탈출 | 백준 특정 거리의 도시 찾기 (0) | 2021.12.07 |
---|---|
[이것이 코딩테스트다] 7일차 - DFS, BFS (0) | 2021.12.07 |
[이것이 코딩테스트다] 5일차 - 백준 뱀 | 프로그래머스 기둥과 보 설치 (0) | 2021.12.04 |
[이것이 코딩테스트다] 4일차 - 구현 문제풀이 (백준, 프로그래머스) (0) | 2021.12.03 |
[이것이 코딩테스트다] 3일차 - 구현 (0) | 2021.12.01 |
Comments