使用回忆以p/q形式为p/q形式的cos(nx)
cos(nx) in p/q form using Memoization
我想使用递归和回忆来计算cos(nx(= p/q,所以我尝试了chebyshev方法用于递归方法,它适用于n的小输入诸如10^18等之类的输入等。我应该如何处理以p/q形式计算cos(nx(?对于较大的n值,我会遇到内存问题,该如何解决?cos(x(= a/b已知
#include <bits/stdc++.h>
using namespace std;
map<long, long> numerator;
map<long, long> denominator;
#define MODULO 1000000007
long a, b, n;
int main() {
cin >> a >> b;
cin >> n;
numerator[0] = 1;
numerator[1] = a;
denominator[0] = 1;
denominator[1] = b;
for (long i = 2; i <= n; ++i) {
numerator[i] = (long) (2 * a * numerator[i - 1] - b*numerator[i - 2]) % MODULO;
denominator[i] = (denominator[i - 1] * denominator[i - 2]) % MODULO;
}
cout << "numerator of cos(nx) = " << numerator[n] << " denominator = " << denominator[n] << endl;
}
大声笑,这是您要的竞赛问题。你太无耻了。那是Codechef的2月挑战的问题。您可以以一些评分而下跌。SMH
相关文章:
- 如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件"sin.txt",另一个文件"cos.txt",我想将它们分别绘制在一个图表上
- MacOS 上的 Xcode 11 项目不在一个函数中使用 sin 和 cos:未定义的符号"___sincosf_stret"
- C++ - 使用泰勒级数近似估计 cos(x)
- cos功能使我零
- 使用回忆以p/q形式为p/q形式的cos(nx)
- 未解析的外部符号 fabs, cos, sin.
- sin cos 函数在大于 90 的度数时给出错误的结果
- 用C 创建SIN/COS图
- 使用SIN和COS函数迭代时,NAN会导致
- 我的神经网络学习sin x,但不学习cos x
- C 程序创建SIN COS和切线值
- 为什么剂量 cos(90) 不等于零
- C# 中 NX 客户端中的密码加扰算法
- C++模式:1x基类+Nx派生类,但具有_上一个资源派生类
- 毕达哥拉斯恒等式:如何计算正确的cos符号
- cos 给出错误的值
- 着色器中实现双精度cos()的结果是NaN,但在CPU上运行良好.出了什么问题
- cos 和 sin 不提供预期的输出
- 将 cos 和 sin 存储到一个向量中并获得奇怪的值
- 泰勒级数 在sin(90)和cos(120)之后得到nan