[leetcode] 77. Combinations

nikevapormax·2023년 8월 1일
0

leetcode

목록 보기
1/3

leetcode 77. Combinations

Problems

두 개의 정수 n과 k가 제공된다. [1, n]의 범위에서 k개의 개수로 조합이 가능한 모든 조합을 리턴하라.

Input: n = 4, k = 2
Output: [[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]]
Explanation: There are 4 choose 2 = 6 total combinations.

Note that combinations are unordered, 
i.e., [1,2] and [2,1] are considered to be the same combination.

Idea

  • combination의 말뜻 그대로 내가 짜야할 코드는 조합을 찾는 코드이다.
  • 코드를 복잡하게 짜는 것보다 python itertools의 combinations 함수를 사용하는 것이 나을 것 같아 해당 함수를 사용했다.

  • 만약 순서가 보장되어야 했다면, python itertools의 permutations를 활용하면 된다.

Code

import itertools


class Solution:
    def combine(self, n: int, k: int) -> List[List[int]]:
        return itertools.combinations(range(1, n+1), k)
  • 나는 입력받은 n 또한 결과값으로 반환해야 하니 range는 1 부터 n+1까지로 설정하였다.
  • 한 요소당 몇개로 구성하는 지에 대해서는 k를 입력해 해결하였다.
profile
https://github.com/nikevapormax

0개의 댓글