HFUT 1356.转啊转(安徽省2016“京胜杯”程序设计大赛 E)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了HFUT 1356.转啊转(安徽省2016“京胜杯”程序设计大赛 E),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1779字,纯文字阅读大概需要3分钟。
内容图文
![HFUT 1356.转啊转(安徽省2016“京胜杯”程序设计大赛 E)](/upload/InfoBanner/zyjiaocheng/1052/60cac2f84a574bf1ad52040d702daef4.jpg)
转啊转
Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 25 Accepted: 8
Description
在二维平面上,有一个固定的圆和一个固定的点(保证该点不在圆上),还有一个动点在圆上以角速度w绕圆心一直转。在t时刻,连接该动点与定点成一条直线k,求直线k被圆所截线段的长度(即直线k在圆内部分长度)。动点初始时刻在圆的三点钟方向(即与x轴正方向平行),并以逆时针方向绕圆转。
?
Input
先输入一个整数T,表示T(T<50)组数据。
每组数据一行七个实数a,b,r(r>0),x,y,w(w>=0),t(t>=0) 分别表示圆的圆心坐标(a,b),半径r,固定点坐标(x,y),角速度w,要查询的时刻t。
上述所有数据的绝对值小于10000。
Output
输出答案占一行,保留2位小数。
Sample Input
1
1 1 1 3 1 3 0
Sample Output
2.00
Hint
角速度定义:
一个以弧度为单位的圆(一个圆周为2π,即:360度=2π),在单位时间内所走的弧度即为角速度。
纯粹的数学问题。
使用两点式、点到直线距离公式、勾股定理求解即可
要注意的是
double输入用%lf 输出用%f
不然会有奇妙的问题出现
AC代码:GitHub
1 /* 2 By:OhYee 3 Github:OhYee 4 HomePage: http://www.oyohyee.com 5 Email:oyohyee@oyohye`e.com 6 Blog: http://www.cnblogs.com/ohyee/ 7 8 かしこいかわいい? 9 エリーチカ! 10 要写出来Хорошо的代码哦~ 11 */ 12 13 #include <cstdio> 14 #include <algorithm> 15 #include <cstring> 16 #include <cmath> 17 #include <string> 18 #include <iostream> 19 #include <vector> 20 #include <list> 21 #include <queue> 22 #include <stack> 23 #include <map> 24usingnamespace std; 2526//DEBUG MODE27#define debug 0 2829//循环30#define REP(n) for(int o=0;o<n;o++) 3132constdouble PI = 3.1415926; 3334void Do() { 35double a,b,r,x,y,w,t; 36 scanf("%lf%lf%lf%lf%lf%lf%lf",&a,&b,&r,&x,&y,&w,&t); 3738double xb = a + r * cos(w*t); 39double yb = b + r * sin(w*t); 4041double A = y - yb; 42double B = xb - x; 43double C = x * yb - xb * y; 4445double l = abs(A * a + B * b + C) / sqrt(A * A + B * B); 4647double ans = 2 * sqrt(r * r - l * l); 4849 printf("%.2f\n",abs(ans)); 50} 5152int main() { 53int T; 54 scanf("%d",&T); 55while(T--) 56 Do(); 57return0; 58 }
原文:http://www.cnblogs.com/ohyee/p/5540964.html
内容总结
以上是互联网集市为您收集整理的HFUT 1356.转啊转(安徽省2016“京胜杯”程序设计大赛 E)全部内容,希望文章能够帮你解决HFUT 1356.转啊转(安徽省2016“京胜杯”程序设计大赛 E)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。