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

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

오렌지컵 출제하기

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

요약
각 상한 L=1부터 N까지에 대해, 같은 출제자가 L번을 초과하지 않도록 문제 K개를 골라 준비 시간 합의 최솟값을 구하고, 불가능하면 -1을 출력한다.
난이도

어려움10점 중 8점

유형
그리디, 정렬, 힙, 구현
정답자
아직 제출이 없습니다

문제

당신은 지금 오렌지컵의 첫 번째 문제를 보고 있다. 이 대회의 이름인 "오렌지컵"은 출제진 모두와 검수진 대다수의 코드포스 닉네임 색이 오렌지인 데에서 비롯되었다.

오렌지컵 출제진 NN명은 총 NN개의 문제를 만들었고, 이 중 KK개를 골라 출제하려고 한다. NN개의 문제에는 차례대로 11부터 NN까지의 번호가 붙어 있다. 오렌지컵 출제진들은 한 명의 출제자가 너무 많은 문제를 낼 경우 대회 준비의 부담이 커지기 때문에, 한 출제자는 최대 LL개의 문제만 내기로 약속했다. 하지만, 한 문제도 내지 않는 출제자가 생기는 경우는 문제 없이 넘어가기로 했다.

오렌지컵의 출제자 NN명에게는 차례대로 11부터 NN까지의 번호가 붙어 있다. ii번 문제의 출제자는 aia_i번 출제자이고, 이 문제를 출제하기로 결정했을 경우 문제를 준비하는 데 걸리는 시간은 bib_i이다. 출제진들은 일을 하기 귀찮기 때문에, 출제할 모든 문제의 준비 시간 bib_i의 합을 최소로 하고자 한다.

LL이 11부터 NN 사이의 모든 자연수일 때, 출제한 문제들의 준비 시간 bib_i의 합의 최솟값을 각각 구하여라.

입력

첫 번째 줄에는 문제 아이디어의 수 NN과 출제할 문제의 수 KK가 주어진다.

두 번째 줄에는 각 문제의 출제자의 번호 a1,a2,⋯ ,aNa_1, a_2, \cdots, a_N이 주어진다.

세 번째 줄에는 각 문제의 준비 시간 b1,b2,⋯ ,bNb_1, b_2, \cdots, b_N이 주어진다.

출력

LL이 11부터 NN까지의 정수일 때 문제의 답을 띄어쓰기로 구분하여 출력한다. 단, 조건을 만족하도록 문제 출제가 불가능한 경우 -1을 출력한다.

제한

  • 1≤K≤N≤1051 \le K \le N \le 10^5
  • 1≤ai≤N1 \le a_i \le N
  • 1≤bi≤1091 \le b_i \le 10^9
  • 입력으로 들어오는 값이 고증에 맞지 않을 수 있다.
  • 입력으로 들어오는 모든 수는 정수이다.

예제1

  1. 예제 1

    입력
    6 3
    1 1 1 2 2 2
    1 2 3 7 8 9
    
    예상 출력
    -1 10 6 6 6 6