UVa 10387 台球
2014-02-24 18:05
232 查看
/*
* 解题思路:
*
题目大意就是,给出5个数据,分别是,台球桌的水平长度,竖直长度,小球滚动多少秒,撞击竖直边缘的次数,撞击水平边缘的次数
* 要求是给出,小球最开始击打时的初始角度和每秒钟滚动的速度
* 解题:
*
刚开始碰到题目很没有思路、给的都是距离的条件,怎么去求角度速度
* 这题有点转换的技巧在里面, V = S / t;
* 所以先求出总路程,那么速度就可以解决,那么总路程要怎么得出来?
* 由小球撞击台球桌边缘的次数乘以相对应的台球桌桌长(宽)即可( 相当于利用勾股定理: 横向^2+纵向^2 = 总路程^2 )
* 经转换后、题目也就不难了!
*/
* 解题思路:
*
题目大意就是,给出5个数据,分别是,台球桌的水平长度,竖直长度,小球滚动多少秒,撞击竖直边缘的次数,撞击水平边缘的次数
* 要求是给出,小球最开始击打时的初始角度和每秒钟滚动的速度
* 解题:
*
刚开始碰到题目很没有思路、给的都是距离的条件,怎么去求角度速度
* 这题有点转换的技巧在里面, V = S / t;
* 所以先求出总路程,那么速度就可以解决,那么总路程要怎么得出来?
* 由小球撞击台球桌边缘的次数乘以相对应的台球桌桌长(宽)即可( 相当于利用勾股定理: 横向^2+纵向^2 = 总路程^2 )
* 经转换后、题目也就不难了!
*/
#include <math.h> #include <stdio.h> int main( ) { int a,b,s,m,n; double x,y,pi = ; while( scanf("%d%d%d%d%d",&a,&b,&s,&m,&n) && (a||b||s||m||n ) ) { x = a*m; y = b*n; printf("%.2lf %.2lf\n",atan( y/x )/(4.0 * atan( 1.0 ))*180,sqrt(x*x+y*y)/s); } return 0; }
相关文章推荐
- UVA 10387 台球 ,
- Uva 10387 Billiard
- uva 10387 Billiard (基础数学问题.平面反射)
- uva10387
- uva-10387 - Billiard
- Uva 10387 - Billiard
- UVa 10387 - Billiard
- uva 10387 Billiard 几何 撞球
- UVa 10387 - Billiard
- uva 10387 - Billiard
- UVA 10387 (暑假-几何 -C - Billiard)
- UVa 10387 - Billiard
- UVA-10387 Billiard
- UVA - 10387 Billiard
- UVA10387 Billiard
- uva 10387 Billiard
- Volume 1. Elementary Problem Solving :: Maths - Simple Geometry Uva 10250,579,375,10387,10112
- UVA 10387 - Billiard
- uva-10387 - Billiard
- uva 10387