专栏文章
题解:P2433 【深基1-2】小学数学 N 合一
P2433题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mipcwiaq
- 此快照首次捕获于
- 2025/12/03 09:56 3 个月前
- 此快照最后确认于
- 2025/12/03 09:56 3 个月前
这是一篇整活题解
众所周知
我们可以用泰勒级数实现
我们把 取小亿点点,精度可能是过得去的。
这样,把所有的常数全部换成一个极限,那也过得去嘛!
AC 代码:
CPP#include<iostream>
#include<cmath>
#define double long double
using namespace std;
double Sin(double x) {
double ret = x, a = x, p = x * x, cur = 1;
for (int i = 1; i <= 100; i++) {
cur *= (2 * i) * (2 * i + 1); a *= p / cur;
if (i % 2 == 0) ret += a;
else ret -= a;
}
return ret;
}
int main()
{
double x = 0.0000001;
double q = Sin(x) / x;
int T;
cin >> T;
if (T == 1)
{
cout << "I love Luogu!";
}
else if (T == 2)
{
cout << 6*q << " " << 4*q;
}
else if (T == 3)
{
cout << 3*q << endl << 12*q << endl <<2*q;
}
else if (T == 4)
{
cout << q * 500 / 3;
}
else if (T == 5)
{
cout << ( 260 + 220 )*q / ( 12 + 20 )*q;
}
else if (T == 6)
{
cout << sqrt(pow(6 , 2) + pow (9 , 2));
}
else if (T == 7)
{
cout << 110*q << endl << 90*q << endl << 0;
}
else if (T == 8)
{
cout <<2*3.141593*5<<endl<<3.141593*5*5<<endl<<4.0/3*3.141593*5*5*5;
}
else if (T == 9)
{
cout <<(((q+q)*2+q)*2+q)*2;
}
else if (T == 10)
{
cout << 9*q;
}
else if (T == 11)
{
cout << 33.3333;
}
else if (T == 12)
{
cout << 13*q << endl << "R";
}
else if (T == 13)
{
cout << 16*q;
}
else if (T == 14)
{
cout << 50*q;
}
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...