아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

할인 패키지

면접 대비

시간 제한1초메모리 제한512 MB

요약
m가지 물건 종류의 부분집합과 가격으로 주어지는 n개의 패키지 중에서, 모든 종류를 적어도 하나씩 포함하도록 고르는 최소 비용을 구한다.
난이도

보통10점 중 6점

유형
동적 계획법, 비트 연산, 완전 탐색, 배열
정답자
아직 제출이 없습니다

문제

Gigel은 요리 실력을 시험해 보려고 시장에 재료를 사러 간다. 시장에서는 mm가지 종류의 물건을 nn일 동안 할인 패키지로 판다. ii번째 날에 Gigel은 그날 판매하는 할인 패키지를 사거나 사지 않을 수 있다. 할인 패키지는 mm가지 물건 종류의 집합의 공집합이 아닌 부분집합으로 나타내며 가격이 정해져 있다.

mm, nn과 nn개의 할인 패키지 각각의 가격과 구성을 알 때, mm가지 종류의 물건을 각각 하나 이상 사기 위해 Gigel이 지불해야 하는 최소 금액을 구하라.

입력

입력의 첫째 줄에는 두 수 mm과 nn이 주어진다.

다음 nn개의 줄에는 nn개의 할인 패키지가 설명된다. (i+1)(i+1)번째 줄(1≤i≤n1 \le i \le n)에는 그날 할인 패키지에 들어 있는 물건의 수 nrnr과 가격 pp가 주어진다. 이어서 같은 줄에 그 패키지에 들어 있는 물건의 번호 nrnr개가 주어진다.

출력

모든 종류의 물건을 각각 하나 이상 사기 위해 지불해야 하는 최소 금액을 양의 정수로 출력한다.

제한

  • 1≤m≤171 \le m \le 17, 1≤n≤1,0001 \le n \le 1,000, 1≤p≤1,000,0001 \le p \le 1,000,000
  • 입력에 나오는 모든 수는 양의 정수이다.
  • 할인 패키지는 통째로만 살 수 있다.
  • 어떤 패키지를 나타내는 물건 번호는 집합 {1,2,…,m}\{1, 2, \dots, m\}의 값을 가진다.
  • 모든 테스트 케이스에 답이 존재함이 보장된다.

힌트

고른 패키지는 첫 번째와 세 번째이고, 최소 비용 10+11=2110 + 11 = 21을 얻는다. Gigel은 종류 1의 물건 하나, 종류 2의 물건 하나, 종류 3의 물건 둘, 종류 4의 물건 하나, 종류 5의 물건 하나를 산다.

예제1

  1. 예제 1

    입력
    5 4
    3 10 1 3 2
    2 8 1 4
    3 11 5 4 3
    5 27 1 4 2 3 5
    
    예상 출력
    21