모래성

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

모래와 약간의 물만으로도 놀랍도록 멋진 구조물을 만들 수 있습니다. 여기서 목표는 소박합니다. 평평한 직사각형 모래밭 위에 원기둥 모양의 탑 몇 개(해변용 양동이로 찍어 만든 것)를 세우고, 그 둘레에 작은 직사각형 해자를 파는 것입니다.

단, 한 가지 규칙이 있습니다. 이웃한 모래밭에서 모래를 가져오거나, 남는 모래를 그쪽에 버릴 수 없습니다. 즉 내 모래밭 안의 모래 총량은 고정되어 있습니다. 그래서 쌓아 올린 것에 비해 해자를 깊게 파면 모래밭의 평평한 바닥면(기준 높이)을 위로 올려야 하고, 반대로 해자가 얕고 탑을 많이 쌓으면 기준 높이가 이웃 땅보다 낮아집니다.

내 모래밭은 가로 $w$, 세로 $h$인 직사각형입니다. 둘레를 따라 폭 $m$의 해자가 한 바퀴 둘러 있으며, 기준 높이보다 깊이 $d$만큼 균일하게 파여 있습니다. 그 안쪽에는 원기둥 탑 $b$개를 세우며, $i$번째 탑은 높이 $h_i$, 반지름 $r_i$로 기준 높이 위로 솟아 있습니다. (탑을 위로 쌓든 나란히 놓든 상관없이 부피의 합만 의미가 있으며, 탑들의 바닥 넓이는 항상 모래밭 안에 들어맞는다고 가정합니다.)

모래가 들어오지도 나가지도 않으므로, 평평한 기준 높이는 주변 땅에 비해 올라가거나 내려갑니다. 기준 높이가 몇 센티미터 올라가거나 내려가는지 구하세요.

참고: 이 '흙을 들여오거나 내보내지 않는다'는 규칙은 실제 공사에서도 종종 적용됩니다. 게티 센터(Getty Center)를 지을 때도 부지의 흙을 더하거나 덜어내지 못하게 하는 제약이 있었는데, 모퉁이의 둥근 탑들은 남는 흙을 감추려고 덧붙인 장식입니다.

입력

첫 번째 줄에는 데이터 집합의 개수인 정수 $K \ge 1$이 주어집니다. 이어서 $K$개의 데이터 집합이 다음 형식으로 주어집니다.

각 데이터 집합의 첫 줄에는 다섯 개의 수 $w$, $h$, $m$, $d$, $b$가 주어집니다. $w$와 $h$는 모래밭의 가로와 세로 길이(실수, 단위 cm), $m$은 해자의 폭으로 $m < \tfrac{1}{2}\min(w, h)$를 만족합니다. $d$는 해자의 깊이(실수, 단위 cm)이고, 정수 $b\ (0 \le b \le 100)$는 탑의 개수입니다. 해자는 항상 모래밭의 둘레에 만들어집니다.

이어서 $b$개의 줄에 각각 두 실수 $h_i$와 $r_i$가 주어지며, 이는 $i$번째 원기둥 탑의 높이와 반지름입니다. 탑들은 항상 모래밭 위에 들어맞는다고 가정해도 됩니다.

출력

각 데이터 집합에 대해 먼저 Data Set x: 형식의 줄을 출력합니다. 여기서 $x$는 데이터 집합의 번호(1부터 시작)입니다. 그다음 줄에는 모래밭 기준 높이의 총 변화량을 센티미터 단위로 소수점 아래 둘째 자리까지 반올림하여 출력합니다. 기준 높이가 낮아졌다면 음수 부호를 붙여 출력합니다.