바이트타운에서 해마다 열리는 그레이트 바이토닉 컨퍼런스 준비가 한창이다. 전통에 따라 m개의 발표가 모두 정확히 같은 시각에 진행된다. 모든 발표는 동일한 형태의 방에서 열리며, 방 하나에는 최대 k명이 들어갈 수 있다. 방은 언제나 충분히 많다. 어떤 발표에 n명이 참석하면 그 발표에는 ⌈n/k⌉개의 방이 필요하다.
주최 측은 이익을 최대로 만들고 싶다. 이익은 티켓 판매 수입에서 방 대여 비용을 뺀 값이다. 정원이 k인 방 하나를 빌리는 비용은 s이고, i번째 발표의 티켓 한 장 가격은 ci이다. 티켓 가격은 방을 ⌊k/2⌋명으로 채우기만 해도 이익이 음수가 아니도록 정해져 있다(그보다 적은 인원으로도 이익이 날 수 있다). 주최 측은 예약된 티켓 중 일부를 취소해 이익을 높일 수 있다.
티켓 가격, 방 정원, 방 대여 비용, 그리고 모든 예약이 주어질 때, 예약된 티켓 중 일부를 취소해 얻을 수 있는 최대 이익을 구하여라.
여기서 ⌈x⌉는 x보다 작지 않은 가장 작은 정수, ⌊x⌋는 x보다 크지 않은 가장 큰 정수를 뜻한다.
첫째 줄에 네 정수 m, l, k, s가 공백으로 구분되어 주어진다 (1≤m≤100, 2≤l≤1,000,000, 2≤k≤400, 1≤s≤1,000). 각각 발표의 수, 예약의 수, 방 하나의 정원, 방 하나의 대여 비용이다.
둘째 줄에 m개의 정수 c1,…,cm이 주어지며, 모든 i에 대해 ci⋅⌊k/2⌋≥s이고 ci≤s이다. ci는 i번째 발표(1번부터 m번까지 번호가 매겨짐)의 티켓 가격이다.
이어지는 l개의 줄에는 각각 두 정수 pi와 ri가 주어진다 (1≤pi≤m, 1≤ri≤1,000). 이는 pi번 발표에 대한 ri장의 예약을 뜻한다. 한 예약 안에서 전체가 아니라 원하는 만큼의 티켓만 취소할 수도 있다.
예약된 티켓 중 일부를 취소해 얻을 수 있는 최대 이익(티켓 수입에서 방 대여 비용을 뺀 값)을 정수 하나로 출력한다.
첫 번째 예제에는 티켓 가격이 각각 7, 10, 8인 발표 3개가 있고, 방 정원은 10, 방 대여 비용은 30이다. 1번 발표에는 9장이 예약되어 있어 방 하나로 처리하면 이익은 7⋅9−30=33이다. 3번 발표에는 13장이 예약되어 있는데, 13장을 모두 남기면 방이 두 개 필요하다. 대신 10장만 남겨 방 하나를 꽉 채우는 편이 더 이득이므로 3장을 취소하며, 이익은 8⋅10−30=50이다. 전체 이익은 33+50=83이다.