시험 공부 시간 배분
시간 제한3초메모리 제한512 MB
볼록성을 띠는 이차함수 성적 함수들에 대해 T시간을 배분해 평균 성적을 최대화하는 문제로, 시간이 연속적이고 반올림까지 요구한다.
문제
기말고사가 코앞이다. 프로그래밍 대회에 시간을 쏟느라 공부는 거의 못 했고, 공부할 과목은 개인데 쓸 수 있는 시간은 정해져 있다. 개 과목의 평균 점수가 최대가 되도록 과목마다 공부 시간을 정해야 한다.
쓸 수 있는 시간은 모두 합쳐 시간이다. 과목 를 시간 공부하면 그 과목에서 받는 점수는 이고, 모든 과목이 다음 네 조건을 만족한다.
- 는 구간 에서 감소하지 않는다.
공부 시간은 정수 시간이 아니어도 되고, 한 시간을 쪼개 배분해도 된다. 과목에 배분한 시간의 합은 시간을 넘을 수 없다. 개 과목의 평균 점수가 최대일 때 그 값을 구하라.
입력
첫째 줄에 과목 수 과 전체 공부 시간 가 공백을 사이에 두고 주어진다. (, , 둘 다 정수)
다음 개 줄에 과목 의 , , 가 공백을 사이에 두고 주어진다. 세 값은 소수점 아래 넷째 자리까지 주어지는 실수이고, 절댓값은 100 이하이다.
출력
얻을 수 있는 최대 평균 점수를 한 줄에 출력한다. 소수점 아래 일곱째 자리에서 반올림해 소수점 아래 여섯째 자리까지 적고, 자리가 비면 0을 채워 항상 여섯 자리를 출력한다.