📄 2748260_ac_15ms_88k.cpp
字号:
#include <stdio.h>
#include <math.h>
double r = 3950;
double R = 432000;
double D = 92900000;
double pi = acos(-1.0);
double L = sqrt(D * D + R * R - r * r);
double theta1 = atan(R / D);
double theta2 = atan(L / r);
double beta1 = theta1 + theta2;
double beta_t(double t)
{
return beta1-2*pi*t/24.0/3600.0;
}
int main()
{
double t;
while(scanf("%lf",&t)==1)
{
double beta = beta_t(t);
double d = (D*cos(beta)-r)/sin(beta);
double angle;
if (d<=-R)
angle = -pi*0.5;
else if(d>-R&&d<R)
angle = asin(d/R);
else
angle = pi*0.5;
printf("%lf\n",0.5+angle/pi+d*cos(angle)/pi/R);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -