「模拟赛20190329」作业 泰勒展开
题目描述
小W的数学老师总是喜欢布置计算题作为业,小W却只对证明题感兴趣。
这一次,小W的数学老师布置了一道计算题:
已知递推公式
对于老师给定的,小W需要计算。小W认为这个作业非常简单而且无聊,所以他找到了你,希望你能帮助他完成这道作业题。
输入
第一行一个整数,表示给定的。
输出
一行一个浮点数表示答案,保留位小数。
样例
样例输入
#样例1
0
#样例2
2
样例输出
#样例1
0.6321
#样例2
0.2642
数据范围
对于的数据
对于的数据满足
题解
真·数学题。
解法:
前个暴算,二分答案用验证。更大的算近似值。
解法:
,跪膜大爷。
将泰勒展开变成
将变成非递推形式,这一步很好想:
将带入进去,注意展开后是有无穷项的。
因为和的奇偶性是相同的,我们可以前后抵消一大坨
发现必定小于,而且是在做除法,精度不会流失,那么我们就可以枚举,直到某一项小于之后就停止,由于是以阶乘的速度减小,所以只需要枚举几项就可以了。
代码采取的是第二种方法。
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
#define eps 1e-6
int n;
double ans, now;
int main()
{
scanf("%d", &n);
now = 1;
for (int i = 1; now >= eps; i++)
{
now = now / (n + i);
if (i & 1)
ans += now;
else
ans -= now;
}
printf("%.4f\n", ans);
}
作者:ModestStarlight
出处:http://www.cnblogs.com/ModestStarlight/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
分类:
其他-杂
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现