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

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

은하 컨테이너선

면접 대비

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

요약
높이 제한이 1부터 M까지인 M개의 선반과, 각각 품질 w와 높이 h를 가진 N개의 판이 주어질 때, 각 판이 서로 다른 선반에 들어가도록 선택하여 얻을 수 있는 최대 총 품질을 구한다.
난이도

보통10점 중 5점

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

문제

화성의 한 점토 광산은 붉은 탄소-규소 점토를 캐내어 운반하기 좋은 판으로 압축한다. 모든 판의 너비와 두께는 같지만, 판마다 높이와 재질의 품질은 다를 수 있다. 품질 등급은 1000가지가 있으며, 판의 높이는 1, 2, ..., 500000mm로 생산된다. 판의 가격은 오직 재질의 품질에만 좌우되며 높이와는 무관하다. 품질 등급이 qq인 재질로 만든 판의 가격은 qq 갈락타르이다.

은하 컨테이너선은 이 판들을 실어 나르는 우주선이다. 이 배의 화물칸은 바닥에 MM개의 레일이 평행하게 설치된 넓은 홀이며, 레일 하나에는 판을 하나만 놓을 수 있다. 화물칸의 천장은 비스듬히 기울어져 있어 한쪽 끝은 높이가 11mm, 반대쪽 끝은 MMmm이다. 즉 번호가 nn인 레일 위의 천장 높이는 정확히 nnmm이므로, 그 레일에는 높이가 nn 이하인 판만 놓을 수 있다.

부두에는 운반을 기다리는 판 더미가 쌓여 있다. 선장은 화물의 총 가치를 최대로 만들고 싶지만 화물칸의 크기에 제약을 받는다(판은 잘라낼 수 없다). 노련한 선원들은 언제나 선장의 뜻에 따라 화물을 최적으로 고른다. 최적의 화물에 대해 선장이 얼마를 지불해야 하는지 구하여라.

다음을 수행하는 프로그램을 작성하여라.

  • 화물칸의 크기와 더미에 놓인 판들의 크기를 읽어 들인다.
  • 실을 수 있는 화물의 최대 총 가치를 계산한다.
  • 그 최대 가치를 출력한다.

입력

첫째 줄에 공백으로 구분된 두 자연수 MM과 NN이 주어진다(1≤M≤5000001 \le M \le 500000, 0≤N≤10000000 \le N \le 1000000). MM은 화물칸의 길이이자 최대 높이이며 동시에 레일의 개수이고, NN은 더미에 놓인 판의 개수이다. 이어지는 NN개의 줄에는 각 줄마다 판 하나의 정보가 공백으로 구분된 두 자연수 ww와 hh로 주어진다(1≤w≤10001 \le w \le 1000, 1≤h≤5000001 \le h \le 500000). ww는 판 재질의 품질 등급, hh는 판의 높이(mm)이다. 더미에는 화물칸의 최대 허용 높이보다 높은 판이 섞여 있을 수도 있음에 유의하여라.

출력

첫째 줄에 최적 화물의 가치를 나타내는 정수 하나를 출력한다.

예제3

  1. 예제 1

    입력
    10 5
    2 1
    3 2
    5 2
    2 10
    3 10
    
    예상 출력
    13
    
  2. 예제 2

    입력
    5 0
    
    예상 출력
    0
    
  3. 예제 3

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