만드는 중입니다

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

용량이 제한된 도서관

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

요약
선반 높이와 책 높이가 주어질 때, 각 선반에 x권씩 들어가도록 모든 책을 꽂고 작품을 놓을 수 있는 선반의 최대 개수를 구합니다.
난이도

보통10점 중 6점

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

문제

여름 방학 동안에는 캠퍼스에 머무는 학생이 적어서, TU 델프트 도서관에 새 책을 들이기 좋은 시기다. 새 책은 모두 너비가 같지만 높이는 제각각이다. 기존 책장이 모두 가득 차 있어서, 도서관 운영위원회는 이 책들을 전시할 새 책장을 들이기로 했다.

새 책장에는 높이가 다른 선반이 여러 개 있다. 각 선반에는 xx권의 책을 꽂을 수 있다. 빈 공간이 남을 수 있으므로, 위원회는 이 책장에 예술 작품도 전시하려 한다. 선반마다 최대 한 점만 놓을 수 있다. 예술 작품은 옆에 놓이는 책이 yy권 이하인 선반에만 놓을 수 있는데, 예술 작품이 차지하는 공간이 x−yx-y권의 책과 같기 때문이다.

그림 L.1: 빗금 친 부분은 새 책을 모두 꽂으면서도 예술 작품을 놓을 수 있는 선반 세 개를 나타낸다.

운영위원회는 새 책을 모두 선반에 꽂을 수 있으면서, 예술 작품을 놓을 수 있는 선반의 수가 가장 많아지는 값을 구하고자 한다.

입력

입력은 다음과 같다.

  • 첫 줄에 정수 네 개 nn, mm, xx, yy가 주어진다 (1≤n,m≤1051 \leq n, m \leq 10^5, 1≤y<x≤10001 \leq y < x \leq 1000). 각각 선반의 수, 책의 수, 가득 찬 선반에 꽂을 수 있는 책의 수, 예술 작품 옆에 놓을 수 있는 책의 수다.
  • 둘째 줄에 nn개의 정수 aa (1≤a≤1091 \leq a \leq 10^9)가 주어진다. 선반의 높이다.
  • 셋째 줄에 mm개의 정수 bb (1≤b≤1091 \leq b \leq 10^9)가 주어진다. 책의 높이다.

출력

mm권의 책을 nn개의 선반에 모두 꽂을 수 있다면, 놓을 수 있는 예술 작품의 최대 개수를 출력한다. 그렇지 않으면 impossible을 출력한다.

예제4

  1. 예제 1

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

    입력
    4 11 3 2
    2 2 2 2
    1 1 1 1 1 1 1 1 1 1 1
    
    예상 출력
    1
    
  3. 예제 3

    입력
    2 10 3 2
    8 6
    4 2 1 3 6 2 1 3 4 5
    
    예상 출력
    impossible
    
  4. 예제 4

    입력
    3 8 8 3
    7 9 4
    2 3 4 5 6 7 8 9
    
    예상 출력
    3