1137 - Sin your life sin公式 + 枚举
http://www.ifrog.cc/acm/problem/1137
和差化积公式,
变成2 * sin((x + y) / 2) * cos((x - y) / 2) + sin(n - (x + y))
然后很重要的一个就是cos(x) = cos(-x)
这样,枚举x + y的取值i,当x + y取值是i的时候,x - y的取值也是有固定的规律,具体就是
i是偶数的时候,0、2、...、这样吧
i是奇数的时候,1、3......、这样吧
然后就要分情况取值,
当sin((x + y) / 2)小于0,就要取一个min去和它乘,否则娶个大的,
数组开大了TLE,不是很懂。
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(false)
using namespace std;
#define inf (0x3f3f3f3f)
typedef long long int LL;
double dp[][];
void work() {
int n;
scanf("%d", &n);
dp[][] = dp[][] = ;
dp[][] = dp[][] = cos(0.5);
double ans = -1.0;
for (int i = ; i <= n - ; ++i) {
double res = sin(i * 0.5);
if (res < ) {
if (i & ) {
ans = max(ans, * res * dp[][] + sin(n - i));
} else ans = max(ans, * res * dp[][] + sin(n - i));
} else {
if (i & ) {
ans = max(ans, * res * dp[][] + sin(n - i));
} else ans = max(ans, * res * dp[][] + sin(n - i));
}
res = cos(i);
dp[][] = min(dp[][], res);
dp[][] = max(dp[][], res);
dp[][] = min(dp[][], res);
dp[][] = max(dp[][], res);
}
printf("%0.9f\n", ans);
} int main() {
#ifdef local
freopen("data.txt", "r", stdin);
// freopen("data.txt", "w", stdout);
#endif
work();
return ;
}
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(false)
using namespace std;
#define inf (0x3f3f3f3f)
typedef long long int LL;
const int maxn = 3e6 + ;
double dp[maxn][];
void work() {
int n;
scanf("%d", &n);
dp[][] = dp[][] = cos();
dp[][] = dp[][] = cos(0.5);
// for (int i = 2; i <= n; ++i) {
// dp[i][0] = min(dp[i - 2][0], cos(i * 0.5));
// dp[i][1] = max(dp[i - 2][1], cos(i * 0.5));
// }
double ans = -1.0;
for (int i = ; i <= n - ; ++i) {
double res = sin(i * 0.5);
if (i & ) {
ans = max(ans, * res * dp[i - ][] + sin(n - i));
} else {
ans = max(ans, * res * dp[i - ][] + sin(n - i));
}
res = cos(i * 0.5);
dp[i][] = min(dp[i - ][], res);
dp[i][] = max(dp[i - ][], res);
}
printf("%0.9f\n", ans);
} int main() {
#ifdef local
freopen("data.txt", "r", stdin);
// freopen("data.txt", "w", stdout);
#endif
work();
return ;
}
TLE code
1137 - Sin your life sin公式 + 枚举的更多相关文章
- [再寄小读者之数学篇](2014-11-19 $\sin(x+y)=\sin x\cos y+\cos x\sin y$)
$$\bex \sin(x+y)=\sin x\cos y+\cos x\sin y. \eex$$ Ref. [Proof Without Words: Sine Sum Identity, The ...
- sin n次方 x 的降幂公式
A(n) = ∫ sinⁿx dx= ∫ sinⁿ⁻¹xsinx dx= - ∫ sinⁿ⁻¹x d(cosx)= - sinⁿ⁻¹xcosx + ∫ cosx • d(sinⁿ⁻¹)= - sinⁿ ...
- 数学中的Sin和Cos是什么意思?(转)
数学中的Sin和Cos是什么意思? 作者:admin 分类:生活随笔 发表于 2012年03月21日 16:48 问:数学中的Sin和Cos是什么意思? 答:sin, cos, tan 都是三角函数, ...
- 利用Xilinx中的ROM构造查找表来计算sin和cos的方法探讨
1.使用matlab制作.coe文件 查找表的构造 构造256点的正余弦表 exp(-j*2*pi*(0:255)/256),分别得到 cos和sin的查找表 matlab代码: 求sin fid = ...
- 数学图形(1.2)Sin曲线
相关软件参见:数学图形可视化工具,使用自己定义语法的脚本代码生成数学图形.该软件免费开源.QQ交流群: 367752815 Sin曲线 vertices = x = *PI) to (*PI) y = ...
- Python sin() 函数
描述 sin() 返回的x弧度的正弦值. 语法 以下是 sin() 方法的语法: import math math.sin(x) 注意:sin()是不能直接访问的,需要导入 math 模块,然后通过 ...
- 带 sin, cos 的线段树 - 牛客
链接:https://www.nowcoder.com/acm/contest/160/D来源:牛客网 题目描述给出一个长度为n的整数序列a1,a2,...,an,进行m次操作,操作分为两类.操作1: ...
- sin之舞---蓝桥杯练习
问题描述 最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功.所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力. 不妨设 An=s ...
- 已知三角形ABC为锐角三角形,求 sinA + sinB·sin(C/2) 的最大值。
已知三角形ABC为锐角三角形,求 sinA + sinBsin(C/2) 的最大值. 解:Δ := sinA + sinB·sin(C/2) = sin(B+C) + sinB·sin(C/2) = ...
随机推荐
- swoole_table
Memory Swoole提供了7个内存操作的模块,在多进程编程中可以帮助开发者实现一些特殊的需求. swoole_table 是基于共享内存和锁实现的超高性能,并发数据结构
- 1135 Is It A Red-Black Tree(30 分)
There is a kind of balanced binary search tree named red-black tree in the data structure. It has th ...
- 【LeetCode】454 4Sum II
题目: Given four lists A, B, C, D of integer values, compute how many tuples (i, j, k, l) there are su ...
- 【LeetCode】027. Remove Element
题目: Given an array and a value, remove all instances of that value in place and return the new lengt ...
- css 跳转电脑分辨率
因为我们经常在项目中要适配各种屏幕,为了方便前端的开发和测试.我们可以直接把电脑的分辨率调整到需要适配的最小的分辨率,其实还有一种更直接粗暴的方法.直接按F12打开控制台,在收拉浏览器就能看到目前的分 ...
- Vue cli项目开启Gzip
目录 安装 compression-webpack-plugin 更改配置文件 服务器开启gzip功能 安装 compression-webpack-plugin 建议安装v1.1.11版本,最新版本 ...
- window下的hosts
存放在windows系统目录中的\system32\drivers\etc下面. hosts文件是用来记录主机ip地址和主机名的对应关系,建立后就可以用主机名来访问主机,而不必记ip地址了.hosts ...
- 数据库关键字 (Oracle, SQL Server, DB2)
Oracle SQL Server DB2 ! @@IDENTITY DETERMINISTIC & ADD DISALLOW ( ALL DISCONNECT ) ...
- 如何得到WPF中控件绑定的EventTrigger
System.Windows.Interactivity.Interaction.GetTriggers(sender as DependencyObject)[0].Actions
- Python手动安装 package
https://pypi.python.org/pypi 下载 解压 进入setup.py的目录 python setup.py build python setup.py install