2018今日头条湖北省赛【A】

【题目链接】https://www.nowcoder.com/acm/contest/104/A

这题就是很简单的几何题。。md现场推了很久的cos sin仿佛像个zz。自己都想给自己一巴掌。

题意就是正三角形内给一点D,给你ABC与D组成的这三个角度,让你求AD,CD,BD三边重组三角形的三个角度。

emmm...先旋转个60度吧

聪明的你一定能看出来,CD = CD' AD = BD',

因为 CD = CD‘ 且 ∠DCD’ = 60° 易得CDD'是个等边三角形。

所以CD = DD'。

题目让我们求AD BD CD重组三角形,也就是BDD'这个三角形啊对不对QWQ。

 上述已证△CDD'是一个等边三角形了,那就是我红色标注的两个角度是60°。

∠BDD' = ∠BDC - 60°  ∠BD'D = ∠BD'C - 60° = ∠ADC - 60° 那么∠DBD'呢。

首先已知∠ADC + ∠ADB + ∠BDC = 360°。又由四边形内角和是360°可以得到∠DBD' + ∠DCD' + ∠BDC + ∠BD'C = 360°

接着就能推出∠ADB = ∠ DCD' + ∠DBD'

所以∠DBD' = ∠ADB - 60°

由上可知啊!!结论就是三个角度分别-60°啊。

是不是很坑爹啊QAQ。输出排个序就好了。

代码如下。

 1 #include<iostream>
 2 #include<algorithm>
 3 #include<cstdio>
 4 using namespace std;
 5 
 6 double angle[3];
 7 int main(){
 8     int a,b,c;
 9     while(scanf("%d%d%d",&a,&b,&c) != EOF){
10         angle[0] = a - 60;
11         angle[1] = b - 60;
12         angle[2] = c - 60;
13         sort(angle,angle+3);
14         printf("%.4lf %.4lf %.4lf
",angle[0],angle[1],angle[2]);
15         
16     }
17     return 0;
18 } 
View Code
原文地址:https://www.cnblogs.com/Asumi/p/8947226.html