만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

불꽃놀이

면접 대비

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

요약
불꽃의 밝기 A_i와 기준값 K가 주어질 때, 하나 또는 두 개를 묶어 쏘는 쇼를 밝기가 K 이상이고 순서가 비내림차순이 되도록 최대 몇 개까지 만들 수 있는지 구합니다.
난이도

보통10점 중 5점

유형
그리디, 정렬, 투 포인터
정답자
아직 제출이 없습니다

문제

INU 코드페스티벌은 불꽃놀이로 행사를 마무리합니다. 광재는 올해 불꽃놀이 담당자입니다.

누군가 폭죽을 모두 사 버리는 바람에 남은 NN개의 폭죽으로 불꽃놀이를 진행하게 되었습니다.

모든 폭죽에는 화려한 정도를 나타내는 정수 AiA_i가 적혀 있습니다. 다음 규칙을 만족하도록 불꽃놀이를 구성해야 합니다. 모든 폭죽을 사용할 필요는 없습니다.

  1. 첫 번째 불꽃놀이의 화려한 정도는 KK 이상이어야 합니다.
  2. 불꽃놀이의 화려한 정도는 이전 불꽃놀이의 화려한 정도보다 작지 않아야 합니다.
  3. 안전상의 이유로 한 번에 11개 또는 22개의 폭죽만 터트릴 수 있습니다. 22개의 폭죽을 동시에 터트리는 경우 화려한 정도는 두 폭죽의 합과 같습니다.

예를 들어, 남은 폭죽의 화려한 정도가 각각 10,4,1,8,12,510, 4, 1, 8, 12, 5이고 첫 번째 불꽃놀이의 화려한 정도가 77 이상이어야 한다면, 다음과 같이 규칙을 만족하도록 불꽃놀이를 진행할 수 있습니다.

8→(4+5)→10→128 → (4+5) → 10 → 12

위와 같이 4번 진행할 수 있습니다. 이보다 더 많은 횟수의 불꽃놀이를 규칙을 만족하도록 진행할 수는 없습니다.

남은 폭죽의 화려한 정도가 각각 2,32, 3이고 첫 번째 불꽃놀이의 화려한 정도가 77 이상이어야 한다면, 규칙을 만족하도록 불꽃놀이를 진행할 수 없습니다.

학생들은 불꽃놀이를 많이 할수록 만족도가 높습니다. 광재를 도와 최대한 많은 횟수의 불꽃놀이를 만들어주세요.

불꽃놀이를 한 번 이상 진행할 수 있다면, 최대 몇 번 진행할 수 있는지 출력해주세요. 불꽃놀이를 진행할 수 없다면 −1-1을 출력해주세요.

입력

첫 번째 줄에 NN과 KK가 주어집니다. (1≤N≤2000001 \le N \le 200000, 1≤K≤1091 \le K \le 10^9, KK는 정수입니다.)

두 번째 줄에 폭죽의 화려한 정도를 나타내는 NN개의 정수 A1,A2,…,ANA_1, A_2, \ldots, A_N가 공백으로 구분되어 주어집니다. (1≤Ai≤1091 \le A_i \le 10^9)

출력

불꽃놀이를 최대 몇 번 진행할 수 있는지 출력해주세요. 진행할 수 없다면 −1-1을 출력해주세요.

예제2

  1. 예제 1

    입력
    6 7
    10 4 1 8 12 5
    
    예상 출력
    4
    
  2. 예제 2

    입력
    2 7
    2 3
    
    예상 출력
    -1