최대 1 분 소요

라이브러리를 이용한 조합

문제 정리

6-11의 수들의 조합 문제를 itertools 라이브러리를 이용해 간단히 풀어보자!

입력

5 3
2 4 5 8 12
6

처리 과정

  1. lst에서 k개의 원소로 조합을 만든다.
  2. 조합들 중에서 합이 m의 배수라면 cnt+=1
  3. cnt를 출력한다.

출력

2

풀이

import sys
import itertools as it # 순열,조합을 자동으로 구해주는 라이브러리
sys.stdin = open("./input/in11.txt", "rt") # 11번 예제 사용

n,k=map(int,input().split())
lst=list(map(int,input().split()))
m=int(input())

cnt=0
for x in it.combinations(lst,k): # lst에서 k개만 뽑아서 조합으로
    if sum(x)%m==0: # x는 하나의 완성된 조합
        cnt+=1
print(cnt)

정리

  • 라이브러리를 사용하지 못하도록 막을 수 있기 때문에, 라이브러리에 의존하지 말자!


💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기