Description
Input
Each input line contains four integers: m, p, a, b ( m2000, p12, p is even). Input is correct, i.e. for each input numbers there existsx1, x2,..., xm satisfying the given conditions.
Output
For each input line print one number - the maximum value of expression, given above. The answer must be rounded to the nearest integer.
Sample Input
1997 12 3 -318 10 2 4 -1
Sample Output
189548 6
1 #include<stdio.h> 2 #include<string.h> 3 #include<set> 4 #include<math.h> 5 #include<iostream> 6 #include<algorithm> 7 using namespace std; 8 int main() 9 { 10 int m,p,a,b; 11 double ans; 12 while(~scanf("%d%d%d%d",&m,&p,&a,&b)) 13 { 14 if(b<0) 15 b=-b,ans=a*b*pow(sqrt(a*1.0)/a,p),m-=a*b; 16 else ans=b*pow(sqrt(a*1.0),p),m-=b; 17 int rr=m/(a+1); 18 m%=(a+1); 19 m--; 20 ans+=rr*(pow(sqrt(a*1.0),p*1.0)+a*pow(sqrt(a*1.0)/a,p*1.0)); 21 if(m>0){ 22 ans+=m*pow(sqrt(a*1.0)/a,p); 23 ans+=pow(m*sqrt(a*1.0)/a,p); 24 } 25 printf("%.0lf\n",ans); 26 } 27 }