设为首页 加入收藏

TOP

BNUOJ34977夜空中最亮的星(数学,向量的应用)
2015-07-20 17:33:17 来源: 作者: 【 】 浏览:3
Tags:BNUOJ34977 空中 数学 向量 应用

夜空中最亮的星

2000ms 65536KB 64-bit integer IO format: %lld Java class name: Main Prev Submit Status Statistics Discuss Next Font Size:

想要在陌生的地方不迷路,分清楚方向是很重要的,看星星就是一个很好的辅助方法。在一段时间内每晚的同一时间,天上星星的排布是几乎不变的。每颗星星的亮暗程度都有一个标识,称为星等,用一个实数来表示。这个实数的值越小,代表星星越亮,在灯光明亮的城市中能看到的星星的星等范围为 - \infty ~ 3.5等左右。

Map同学害怕丢掉Map这个称号,每晚都勤劳地记下当天帝都星星的排布情况。他面向正北方向站立,将看到的天空映射到一张巨大的直角坐标系上,那么每颗星星都拥有了一个坐标。

这天Map同学来到了美丽的哈尔滨,抬头看见了最亮的星星木星和第二亮的北河三。他朝向他以为的北方站立,像在帝都一样地计算出它们的坐标。但实际上他并不是总能凭直觉找到北的。而且对于使用的坐标系的刻度的大小也没有办法把握。

那么现在他想知道,最少需要转多少角度,他才能够面向正北。

Input

第一行为数据组数t(t<=1000)。

接下来,对每组数据:

第一行为n(2<=n<=1000),表示前一天在帝都看到的星星的数量。

以下为n行,每行3个实数,分别为n颗星星的坐标和星等。

最后一行为4个实数,分别为木星和北河三的坐标。

以上实数绝对值不超过1000。π取3.14159265358。

Output

输出一行,为所需要转的最小角度,保留3位小数。

Sample Input

1
2
0 0 -2
1 0 0
0 0 0 1.2

Sample Output

90.000

Source

第十二届北京师范大学程序设计竞赛决赛 Prev Submit Status Statistics Discuss Next
#include
  
   
#include
   
     #define PI 3.14159265358 typedef struct nnn { double x,y,d; }node; int main() { int t,n; double s,jd,x,y,dis[2]; node star[2],st[2],xl[2]; scanf("%d",&t); while(t--) { scanf("%d",&n); jd=10000; star[0].d=star[1].d=10000; for(int i=0;i
    
     180)jd=360-jd; printf("%.3lf\n",jd); } } 
    
   
  


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇hdu 4871 树的分治+最短路记录路径 下一篇HDU - 5036 Explosion

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·CPython是什么?PyPy (2025-12-26 06:50:09)
·Python|如何安装seab (2025-12-26 06:50:06)
·python要学习数据分 (2025-12-26 06:50:03)
·每日一道面试题-多线 (2025-12-26 06:20:17)
·java项目中哪些地方 (2025-12-26 06:20:14)