2020年7月28日 星期二

10221 - Satellites

解題心得:
弧長=2*pi*半徑*a/360
弦長=2*sin(a/2)*半徑

pi 可用2acos0得知
三角函數參數預設弧度,轉為角度要另外乘上pi/180

程式碼:
#include <iostream>
#include <string>
#include <cmath>
#include <iomanip>
using namespace std;

#define PI 2*acos(0)

int main()
{
    double s,a;
    string type;
    cout<<fixed<<setprecision(6);
    while(cin>>s>>a>>type)
    {
        if(a>180) a=360-a;
        if(type=="min") a/=60;
        cout<<2*PI*(s+6440)*(a/360.0)<<" "<<2*sin(a/2.0*PI/180)*(6440+s)<<endl;
    }
    return 0;
}

沒有留言:

張貼留言