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

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

마법 구슬 찾기

시간 제한2초메모리 제한1024 MB

요약
구슬 k개와 마법 구슬 하나를 M개의 주머니에 나눠 담아, 0부터 N-1까지 모든 k에 대해 최악의 정리 비용을 최소화합니다.
난이도

어려움10점 중 9점

유형
동적 계획법, 분할 정복, 수학
정답자
아직 제출이 없습니다

문제

당신은 모양과 질량이 완전히 같은 k+1k+1개의 구슬을 갖고 있다. 이 중 kk개는 일반 구슬이고, 1개는 마법 구슬이다. 당신은 마법 구슬을 찾아 마법의 성에 들어가려고 한다.

마법 구슬과 일반 구슬을 육안으로 구별할 방법은 없다. 대신 마법 구슬을 찾아내는 데 사용할 수 있는 MM (M≥2M \ge 2)개의 주머니가 있다. 주머니에는 0부터 M−1M-1까지 번호가 붙어 있다.

주머니를 활용해 마법 구슬을 찾는 방법은 다음과 같다.

  1. 갖고 있는 모든 구슬을 MM개의 주머니에 나눠 담는다.
    • 어떤 주머니에도 넣지 않은 구슬이 있으면 안 된다.
    • 구슬을 담지 않은 빈 주머니는 있어도 된다.
    • 주머니에는 구슬만 담을 수 있으며, 다른 주머니를 담을 수는 없다.
  2. 주문을 외운다.
  3. 주문을 외운 직후:
    • 마법 구슬이 들어 있지 않은 주머니의 구슬은 모두 소멸된다.
    • 마법 구슬이 들어 있는 주머니의 구슬은 마법 구슬의 보호를 받아 소멸되지 않는다. 다만 주문의 부수 효과를 수습해야 하고, 이 과정에서 비용이 든다. 마법 구슬이 ii번 주머니에 있고 ii번 주머니에 구슬이 jj개 들어 있었다면, 비용은 A\[i]×j+B\[i]A\[i] \times j + B\[i]원이다 (A\[i]≥0A\[i] \ge 0, B\[i]≥1B\[i] \ge 1).

마법 구슬은 절대 소멸되지 않으므로, 구슬이 마법 구슬 1개만 남을 때까지 위 과정을 반복하면 마법 구슬을 찾을 수 있다.

최악의 경우에 마법 구슬을 찾는 데 드는 비용을 최소화하려고 한다. 즉, k+1k+1개의 구슬 중 어느 구슬이 마법 구슬이더라도 총 ww원 이하를 들여 마법 구슬을 찾을 수 있는 최소의 ww를 구하라.

00 이상 N−1N-1 이하의 모든 kk에 대해 이 문제를 해결하는 함수를 작성하라.

제한

  • 2≤N≤1 000 0002 \le N \le 1\,000\,000
  • 2≤M≤100 0002 \le M \le 100\,000
  • 0≤A\[i]≤1090 \le A\[i] \le 10^{9} (모든 0≤i≤M−10 \le i \le M-1)
  • 1≤B\[i]≤1091 \le B\[i] \le 10^{9} (모든 0≤i≤M−10 \le i \le M-1)

예제1

  1. 예제 1

    입력
    2 2
    0 1
    0 1
    
    예상 출력
    0
    1