#P1343. 2023.05-B卷-HWOD机试 - 经典屏保

2023.05-B卷-HWOD机试 - 经典屏保

题目描述

DVDDVD机在视频输出时,为了保护电视显像管,在待机状态会显示"屏保动画”,如下图所示,DVDDVD LogoLogo在屏幕内来回运动,碰到边缘会反弹。

DVD(1)DVD(1)
DVD(3)DVD(3)
DVD(2)DVD(2)

请根据如下要求,实现屏保LogoLogo坐标的计算算法。

  1. 屏幕是一个800600800*600像素的矩形,规定屏幕的左上角点坐标原点,沿横边向右方向为XX轴,沿竖边向下方向为YY轴。
  2. LogoLogo是一个502550*25像素的矩形,初始状态下,左上角点坐标记做(Xy)(X,y),它在XXYY方向上均以11像素/秒的速度开始运动。
  3. 遇到屏幕四人边缘后,会发生镜面反弹,即以45°45°碰撞边缘,再改变方向以45°45°弹出。
  4. LogoLogo和四个角碰撞时,两个边缘同时反弹的效果是LogoLogo会原路返回。
(0,0)(0,0) 800800 xx轴
Logo(1)Logo(1)
600600
Logo(3)Logo(3)
Logo(2)Logo(2)
yy轴

请编码实现,tt秒后LogoLogo左上角点的坐标。

输入描述

输入33个数字,以空格分隔;

x y t

第一个数字表示LogoLogo左上角点的初始XX坐标;

第二个数字表示LogoLogo左上角点的初始YY坐标;

第三个数字表示时间 tt,题目要求即求tt秒后LogoLogo左上角点的位置。

输出描述

输出22个数字,以空格分隔:

X y

第一个数字表示tt秒后,LogoLogo左上角点的xx坐标

第二个数字表示tt秒后,LogoLogo左上角点的yy坐标

备注

所有用例均保证:

  • 输入的xxyy坐标会保证整个LogoLogo都在屏幕范围内,LogoLogo不会出画;
  • 所有输入数据都是合法的数值,且不会出现负数:
  • tt的最大值为100000100000

样例

输入

0 0 10

输出

10 10

说明

输入样例表示LogoLogo初始位置在屏幕的左上角点,10s10s后,LogoLogoXXYY方向都移动了1010像素,因此输出1010 1010

输入

500 570 10

输出

510 570

说明

输入样例表示初始状态下,LogoLogo的下边缘再有55像素就碰到屏幕下边缘了,5s5s后,会与屏幕碰撞,碰撞后,斜向4545弹出,又经过5s5s后,LogoLogo与起始位置相比,水平移动了1010像素,垂直方向回到了原来的高度。