극한의 효율 빌런

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

요약
가치 합이 K 이상이 되도록 아이템을 고르고, 고른 아이템의 비용 평균을 최소로 만든 값을 내림해 구한다.
난이도

어려움10점 중 8점

유형
동적 계획법, 이분 탐색, 그리디
정답자
아직 제출이 없습니다

문제

숭고한 대학의 프로그래밍 과목에서는 특이한 과제가 출제되었다. 학생들에게는 NN개의 아이템이 주어지며, 각 아이템은 특정한 가치(v_iv\_i)와 비용(c_ic\_i)을 가지고 있다. 학생들은 이 중 일부 아이템을 골라 그 가치의 합이 최소 KK 이상이 되도록 선택하면 과제 만점을 받을 수 있다.

하지만, 이 과제를 단순히 만점으로 끝내고 싶지 않은 학생이 있었다. 그는 바로 숭고한 대학의 유명한 "극한의 효율 빌런"이다. 이 학생은 단순히 가치 합이 KK 이상인 조합을 넘어서, 선택된 아이템들의 비용 평균이 가능한 작도록 만들고자 한다.

빌런 덕분에 더 어려워진 과제를 해야 하는 숭고한 학생을 위해 가치의 합이 KK 이상이 되도록 아이템을 선택했을 때, 선택된 아이템들의 비용 평균의 최솟값을 구해주자. (단, 비용의 평균이 정수가 아닌 경우 소숫점 아래는 버림한다.)

입력

첫째 줄에 두 정수 NN과 KK가 주어진다. (1≤N≤1,000, 1≤K≤5,000)(1 \le N \le 1\\,000,\ 1 \le K \le 5\\,000)

둘째 줄부터 NN개의 줄에 걸쳐 각 아이템의 정보가 주어진다.

각 줄에는 두 정수 v_iv\_i와 c_ic\_i가 공백으로 구분되어 주어지며, 각각 아이템의 가치와 비용을 의미한다. (1≤v_i≤5,000, 1≤c_i≤109)(1 \le v\_i \le 5\\,000,\ 1 \le c\_i \le 10^9)

또한, K≤∑_i=1Nv_i≤5,000K \le \displaystyle\sum\_{i=1}^{N} v\_i \le 5\\,000 를 만족한다.

출력

첫째 줄에 가치의 합이 KK 이상이 되도록 아이템을 선택했을 때, 선택된 아이템들의 비용 평균의 최솟값을 출력한다. (단, 비용의 평균이 정수가 아닌 경우 소숫점 아래는 버림한다.)

예제1

  1. 예제 1

    입력
    5 10
    1 1
    2 2
    3 3
    4 4
    5 5
    
    예상 출력
    2