HDU
来源:互联网 发布:故宫博物馆淘宝 编辑:程序博客网 时间:2024/06/16 06:29
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2898
解题思路:http://blog.csdn.net/Nightmare_ak/article/details/78363623
AC代码:
#include<cstdio>#include<cmath>using namespace std;struct Pos{ double _x, _y, _z;};int main(){ Pos a, b, c;//a为主旋转轴 double xita; for (;scanf("%lf%lf%lf%lf%lf%lf%lf", &b._x, &b._y, &b._z, &a._x, &a._y, &a._z, &xita) == 7;) { double cosbeta = a._x / sqrt(a._x*a._x + a._z*a._z); double sinbeta = a._z / sqrt(a._x*a._x + a._z*a._z); double cosaerfa = sqrt(a._x*a._x + a._z*a._z) / sqrt(a._x*a._x + a._y*a._y + a._z*a._z); double sinaerfa = a._y / sqrt(a._x*a._x + a._y*a._y + a._z*a._z); c._x = b._x, c._y = b._y, c._z = b._z; b._x = c._x*cosbeta + c._z*sinbeta, b._y = c._y, b._z = c._z*cosbeta - c._x*sinbeta; c._x = b._x, c._y = b._y, c._z = b._z; b._x = c._x*cosaerfa + c._y*sinaerfa, b._y = c._y*cosaerfa - c._x*sinaerfa, b._z = c._z; c._x = b._x, c._y = b._y, c._z = b._z; b._x = c._x, b._y = c._y*cos(xita) - c._z*sin(xita), b._z = c._z*cos(xita) + c._y*sin(xita); c._x = b._x, c._y = b._y, c._z = b._z; b._x = c._x*cosaerfa - c._y*sinaerfa, b._y = c._y*cosaerfa + c._x*sinaerfa, b._z = c._z; c._x = b._x, c._y = b._y, c._z = b._z; b._x = c._x*cosbeta - c._z*sinbeta, b._y = c._y, b._z = c._z*cosbeta + c._x*sinbeta; printf("%.3f %.3f %.3f\n", b._x, b._y, b._z); } return 0;}
阅读全文
0 0
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- hdu-
- hdu
- hdu
- hdu
- HDU
- 一个程序员送给大学生弟弟的那些话
- Nginx+Sticky实现负载均衡(1)
- 浅析java内存模型--JMM(Java Memory Model)
- C C++ 全套视频课程收录
- 什么是CDN劫持
- HDU
- 搞大数据,你不懂这三大数据处理趋势就OUT了
- springboot整合activemq,应答模式,消息重发机制,消息持久化
- Effect(十四)—— EffectManager
- SQL case when 遇到null值时的解决办法
- 解决tomcat端口被占用的问题
- 金蝶EAS 弹出消息框
- 面试题39:二叉树的深度
- VueJS(5)---初步练习(5题)