구제금융 보너스 환수
시간 제한1초메모리 제한128 MB
구제금융을 받은 회사 목록과 세율, 그리고 각 임원의 회사와 보너스가 주어질 때, 구제금융 회사 임원의 보너스에서 세율만큼 내림한 금액의 합을 구한다.
문제
많은 금융 회사가 도산하는 것을 막기 위해, 미국 정부(및 여러 다른 나라의 정부)는 수십억 달러 규모의 긴급 대출을 제공하여 이 회사들을 구제(bailout)했다. 그런데 이후 몇몇 회사는 임원들에게 막대한 성과 보너스를 지급했다. 이에 대한 여론의 큰 반발이 일자, 정부가 이 돈을 환수하기 위해 택한 방법 중 하나는 구제금융을 받은 회사에 소속된 직원의 보너스에 95%라는 높은 세금을 매기는 것이었다. 이 문제에서는 정부가 환수하게 될 금액을 계산한다.
구제금융을 받은 회사들의 목록과, 제안된 세율 (예: 95%)가 정수로 주어진다(이 예에서는 ). 또한 임원들의 목록이 주어지며, 각 임원마다 소속 회사와 받은 보너스가 함께 주어진다. 구제금융을 받은 회사에서 일하는 모든 임원은 자신의 보너스 중 퍼센트에 해당하는 금액을 반납해야 하며, 이 값은 소수점 이하를 버려 정수로 내림한다. 편의상, 구제금융을 받지 않은 회사에서 일하는 임원은 보너스를 전혀 반납하지 않는다고 가정한다.
입력
첫째 줄에는 데이터 집합의 개수 가 주어진다. 이어서 개의 데이터 집합이 각각 다음 형식으로 주어진다.
각 데이터 집합의 첫째 줄에는 네 정수 , , , 가 주어진다.
- : 전체 회사의 수.
- : 그중 구제금융을 받은 회사의 수.
- : 전체 임원의 수.
- : 백분율로 나타낸 세율.
다음 줄에는 개의 정수, 즉 구제금융을 받은 회사의 번호( 이상 이하)가 주어진다. 이면 이 줄은 비어 있다. 그다음에는 임원 한 명을 설명하는 개의 줄이 이어진다. 각 줄에는 두 정수 와 가 주어지며, 는 임원 가 속한 회사이고 는 임원 가 받은 보너스이다.
출력
각 데이터 집합마다 먼저 Data Set x:를 한 줄에 출력한다. 여기서 는 데이터 집합의 번호이다(부터 시작). 그다음 줄에는 해당 데이터 집합에서 정부가 세금으로 환수하는 총액을 출력한다. 연속된 데이터 집합 사이에는 빈 줄을 하나 출력한다.