玲珑杯 1137 - Sin your life(数学)

Posted Gealo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玲珑杯 1137 - Sin your life(数学)相关的知识,希望对你有一定的参考价值。

题目链接:http://www.ifrog.cc/acm/problem/1137

 

题解:设m=n-z

sin(x)+sin(y)=sin(m-y)+sin(y)利用公式得最大值为sqrt(sin(m)*sin(m)+(1-cos(m))*(1-cos(m)))

所以只要便利一下z就可以了。

#include <iostream>
#include <cstring>
#include <cmath>
#include <cstdio>
#define Pi acos(-1)
using namespace std;

int main() {
    int n;
    scanf("%d" , &n);
    double ans = 0 , Max = -3;
    for(int i = 1 ; i <= n ; i++) {
        int z = i;
        int m = n - z;
        Max = max(Max , sin(1.0 * z) + 1.0 * sqrt(sin(1.0 * m) * sin(1.0 * m) + (1.0 - cos(1.0 * m)) * (1.0 - cos(1.0 * m))));
    }
    printf("%.9lf\n" , Max);
    return 0;
}

以上是关于玲珑杯 1137 - Sin your life(数学)的主要内容,如果未能解决你的问题,请参考以下文章

“玲珑杯”ACM比赛 Round #18

玲珑杯#7 1/5

“玲珑杯”线上赛 Round #17 河南专场

“玲珑杯”算法比赛 Round #14题目与标程

“玲珑杯”ACM比赛 Round #19

2016-12-24玲珑杯