삼각함수 최적화
시간 제한2초메모리 제한128 MB
x+y+z=S인 양의 정수 x, y, z를 골라 sin 또는 cos의 합을 최대 또는 최소로 만들고 소수점 10자리까지 출력한다.
문제
실제 응용에서 나타나는 많은 문제는 최적화 문제로 표현할 수 있다. 즉, 몇 가지 제약 조건 아래에서 이른바 목적 함수(criterion function) 를 최대화하거나 최소화해야 한다.
다음 삼각함수 최적화 문제를 생각하자. 제약 조건 아래에서 목적 함수
를 최대화하거나 최소화한다. 여기서 , , 는 변수이고 는 주어진 매개변수이며, , , , 는 모두 자연수이다(즉 ). 함수 , , 각각은 삼각함수 또는 중 하나이고, 그 인자는 라디안 단위로 측정한다.
이 삼각함수 최적화 문제를 푸는 프로그램을 작성하라.
입력
입력은 5줄로 이루어진다.
- 첫째 줄은 함수 을 나타내며
sin또는cos중 하나이다. - 둘째 줄은 함수 를 같은 형식으로 나타낸다.
- 셋째 줄은 함수 을 같은 형식으로 나타낸다.
- 넷째 줄은
min또는max중 하나이다.min이면 목적 함수를 최소화하고,max이면 최대화한다. - 다섯째 줄은 매개변수 이다 ().
출력
목적 함수의 최적값을 한 줄에 출력한다. 넷째 줄이 max 이면 최댓값을, min 이면 최솟값을 출력하며, 이는 를 만족하는 모든 자연수 , , 에 대한 값이다.
값은 소수점 아래 정확히 10자리로 반올림하여 출력한다 (형식 %.10f).