Python/표준라이브러리

Python 경우의 수 구하기

걸어서뉴욕까지 2024. 9. 22. 23:56
# itertools 사용
from itertools import permutations, combinations

data = ['김상철', '류경수', '이영식', '고도윤', '김두환']

# 3개의 조합 구하기
list(combinations(data, 3))

## 결과값 
#[('김상철', '류경수', '이영식'),
# ('김상철', '류경수', '고도윤'),
# ('김상철', '류경수', '김두환'),
# ('김상철', '이영식', '고도윤'),
# ('김상철', '이영식', '김두환'),
# ('김상철', '고도윤', '김두환'),
# ('류경수', '이영식', '고도윤'),
# ('류경수', '이영식', '김두환'),
# ('류경수', '고도윤', '김두환'),
# ('이영식', '고도윤', '김두환')]


# 2개의 순열 구하기
list(permutations(data, 2))

## 결과값
# [('김상철', '류경수'),
# ('김상철', '이영식'),
# ('김상철', '고도윤'),
# ('김상철', '김두환'),
# ('류경수', '김상철'),
# ('류경수', '이영식'),
# ('류경수', '고도윤'),
# ('류경수', '김두환'),
# ('이영식', '김상철'),
# ('이영식', '류경수'),
# ('이영식', '고도윤'),
# ('이영식', '김두환'),
# ('고도윤', '김상철'),
# ('고도윤', '류경수'),
# ('고도윤', '이영식'),
# ('고도윤', '김두환'),
# ('김두환', '김상철'),
# ('김두환', '류경수'),
# ('김두환', '이영식'),
# ('김두환', '고도윤')]