1700.cpp

来自「杭电 acm部分代码 有兴趣的可以下载 谢谢」· C++ 代码 · 共 44 行

CPP
44
字号
#include<stdio.h>
#include<math.h>
double x,y,r,sita1,sita2,x_1,x_2,y_1,y_2;
const double pi=3.1415926535;
int main()
{
    int test;
    scanf("%d",&test);
    while(test--){
        scanf("%lf %lf",&x,&y);
        r=sqrt(x*x+y*y);
        sita1=acos(x/r);
        sita2=asin(y/r);
        sita1+=2*pi/3;
        sita2+=2*pi/3;
        if(sita1>2*pi)
            sita1-=2*pi;
        if(sita2>2*pi)
            sita2-=2*pi;
        x_1=cos(sita1)*r;
        y_1=sin(sita2)*r;
        sita1+=2*pi/3;
        sita2+=2*pi/3;
        if(sita1>2*pi)
            sita1-=2*pi;
        if(sita2>2*pi)
            sita2-=2*pi;
        x_2=cos(sita1)*r;
        y_2=sin(sita2)*r;
        if(y_1-y_2>0.0005){
            double t=y_1;y_1=y_2;y_2=t;
                t=x_1;x_1=x_2;x_2=t;
        }
        else if(fabs(y_1-y_2)<0.0005){
            if(x_1-x_2>0.0005){
                double t=y_1;y_1=y_2;y_2=t;
                    t=x_1;x_1=x_2;x_2=t;
            }
        }
        printf("%.3lf %.3lf %.3lf %.3lf\n",x_1,y_1,x_2,y_2);
    }
    return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?