HUST 1563
来源:互联网 发布:共识网 知乎 编辑:程序博客网 时间:2024/06/04 20:06
题目链接:
http://acm.hust.edu.cn/problem/show/1563
题解:
使用的是坐标分解的方法。
代码:
#include <cstdio>#include <cmath>#include <cstring>#include <iostream>#include <algorithm>#define met(a,b) memset(a,b,sizeof(a))#define inf 0x3f3f3f3fint main(){ int t; int id=1; scanf("%d",&t); while(t--) { double a,b,c; scanf("%lf%lf%lf",&a,&b,&c); double r,px,py,pz; scanf("%lf%lf%lf%lf",&r,&px,&py,&pz); double vx,vy,vz,t; scanf("%lf%lf%lf%lf",&vx,&vy,&vz,&t); a-=2*r; b-=2*r; c-=2*r; px-=r; py-=r; pz-=r; double len_x=fmod(fmod(vx*t,2*a)+2*a,2*a); double len_y=fmod(fmod(vy*t,2*b)+2*b,2*b); double len_z=fmod(fmod(vz*t,2*c)+2*c,2*c); len_x+=px; len_y+=py; len_z+=pz; if(len_x>=2*a) len_x-=2*a; else if(len_x>=a) len_x=a-(len_x-a); if(len_y>=2*b) len_y-=2*b; else if(len_y>=b) len_y=b-(len_y-b); if(len_z>=2*c) len_z-=2*c; else if(len_z>=c) len_z=c-(len_z-c); printf("Case #%d:",id++); printf(" %.1f %.1f %.1f\n",len_x+r,len_y+r,len_z+r); }}
0 0
- HUST 1563
- HUST
- HUST
- HUST
- HUST
- Hust oj 1563 亲和数(打表)
- HUST 1328
- HUST-1010
- HUST 1408
- hust 1602
- HUST 1525
- hust 1010
- HUST 1422
- hust 1592
- HUST 1017
- HUST 1017
- hust 1007 平衡树
- hust 1007 treap
- 自考之路
- br一点点改动
- 解决my eclipse 中server报错
- 博客搬家了
- Codeforces798A Mike and palindrome
- HUST 1563
- 第十讲、Jmeter之关联
- Ambari 整体架构理解
- 2016-2017学年第二学期C++第一章
- Java面试准备二十一:单例模式
- 124.浮点型数据精度不准确的探究
- PreparedStatement百度百科
- OpenStack Ocata 安装(一)环境准备
- 有return的情况下try catch finally的执行顺序(最有说服力的总结)