Problemas
휘준이는 1주일 동안 혼자서 정올 사이트의 문제만 풀다 지루해져 다음과 같이 혼자 노는 게임을 만들었다. 규칙은 다음과 같다.
처음에는 0점으로 시작한다.
총 nA+nB회의 다음과 같은 2가지 행동을 취할 수 있다.현재 점수에 scoreA를 더한다. 이는 총 nA번 한다.
현재 점수에 scoreB를 곱한다. 이는 총 nB번 할 수 있다.
scoreA = paramA / 1000.0 이며 scoreB = paramB / 1000.0 이다. (여기서 '/'는 소수점 나눗셈을 뜻한다.)
위의 규칙을 지키면서 게임을 했을 때 마지막으로 나올 수 있는 점수 중 최고점을 구하는 프로그램을 작성하라.
Entrada
입력은 여러개의 테스트 케이스로 이뤄지며 입력의 처음에는 테스트 케이스의 개수 T가 주어진다. T는 10이하의 정수다.
각 테스트 케이스로 0이상 50이하의 정수 nA, nB, -10,000이상 10,000이하의 정수 paramA, -2,000이상 2,000이하의 정수 paramB가 주어진다.
Salida
각 테스트 케이스에 대해 가장 높은 점수를 소수점 6번째 자리에서 반올림하여 한줄에 하나씩 출력한다.
Ejemplo
4
5 4 3000 2000
3 3 2000 100
41 34 9876 -1234
50 50 10000 2000
240.00000
6.00000
515323.99823
562949953421312000.00000
첫번째 테스트 케이스의 경우 scoreA=3000/1000.0=3 이며, scoreB=2000/1000.0 이다. 이 경우 scoreA를 먼저 모두 점수에 더한다음 scoreB를 모두 곱하면 240이 답이 된다.
두번째 테스트 케이스의 경우 scoreA=2, scoreB=0.1 이며, 0*scoreB*scoreB*scoreB+scoreA+scoreA+scoreA=6이 된다.