TRIOPT - Trigonometric optimization

no tags 

Many problems arising in practical applications may be stated as optimization problems. Usually it is necessary to maximize or minimize so called criterion function taking into account some constraints.

Let’s consider a trigonometric optimization problem. It is necessary to maximize or to minimize criterion function F1(x) + F2(y) + F3(z) with constraint x + y + z = S, where x, y, z – variables, S – parameter, x, y, z, S - natural numbers. Each of the functions F1, F2 and F3 is a trigonometric function sin or cos.

You need to write a program which solves the trigonometric optimization problem.


The first line of the input data contains integer T (1 ≤ T ≤ 65) - the number of testcases. Then the descriptions of T testcases follow.

The description of each testcase consists of 5 lines. The first line describes function F1 and contains either sin or cos. The second and the third lines describe functions F2 and F3 respectively and have the same format as the first line. Next, the fourth line contains either min or max. If the line contains min than it is necessary to minimize criterion function, otherwise it is necessary to maximize criterion function. Finally, the fifth line contains parameter S value (3 ≤ S ≤ 1 000 000).


For each testcase you should output one line into the output data. This line should contain one real number – the found value of the criterion function. Absolute error of your answer must not exceed 10-10.




hide comments
Fahmi: 2011-05-02 06:35:39

Last edit: 2012-06-10 06:17:02
tld: 2010-07-06 12:42:43

oh,thank you!
I have solved this problem.

Last edit: 2010-07-06 12:42:56
:D: 2010-07-06 11:15:43

I assumed that 0 is NOT natural in my solution and got AC.

tld: 2010-07-06 05:31:01

I want to know whether 0 is a natural number?

Added by:Ivan Metelsky
Time limit:14.56s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET
Resource:NEERC Western Subregion QF 2005