【备战秋招】每日一题:2023.05-B卷-华为OD机试 - 经典屏保

news/2024/10/31 5:36:22/

为了更好的阅读体检,可以查看我的算法学习博客恢复数字序列

题目描述

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

D V D ( 1 ) DVD(1) DVD(1) D V D ( 1 ) DVD(1) DVD(1)
D V D ( 1 ) DVD(1) DVD(1) D V D ( 1 ) DVD(1) DVD(1)
D V D ( 3 ) DVD(3) DVD(3) D V D ( 3 ) DVD(3) DVD(3)
D V D ( 3 ) DVD(3) DVD(3) D V D ( 3 ) DVD(3) DVD(3)
D V D ( 2 ) DVD(2) DVD(2) D V D ( 2 ) DVD(2) DVD(2)
D V D ( 2 ) DVD(2) DVD(2) D V D ( 2 ) DVD(2) DVD(2)

请根据如下要求,实现屏保 L o g o Logo Logo坐标的计算算法。

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

请编码实现, t t t秒后 L o g o Logo Logo左上角点的坐标。

输入描述

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

x y t

第一个数字表示 L o g o Logo Logo左上角点的初始 X X X坐标;

第二个数字表示 L o g o Logo Logo左上角点的初始 Y Y Y坐标;

第三个数字表示时间 t t t,题目要求即求 t t t秒后 L o g o Logo Logo左上角点的位置。

输出描述

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

X y

第一个数字表示 t t t秒后, L o g o Logo Logo左上角点的 x x x坐标

第二个数字表示 t t t秒后, L o g o Logo Logo左上角点的 y y y坐标

备注

所有用例均保证:

  • 输入的 x x x y y y坐标会保证整个 L o g o Logo Logo都在屏幕范围内, L o g o Logo Logo不会出画;
  • 所有输入数据都是合法的数值,且不会出现负数:
  • t t t的最大值为 100000 100000 100000

样例

输入

0 0 10

输出

10 10

说明

输入样例表示 L o g o Logo Logo初始位置在屏幕的左上角点, 10 s 10s 10s后, L o g o Logo Logo X X X Y Y Y方向都移动了 10 10 10像素,因此输出 10 10 10 10 10 10

输入

500 570 10

输出

510 570

说明

输入样例表示初始状态下, L o g o Logo Logo的下边缘再有 5 5 5像素就碰到屏幕下边缘了, 5 s 5s 5s后,会与屏幕碰撞,碰撞后,斜向 45 45 45弹出,又经过 5 s 5s 5s后, L o g o Logo Logo与起始位置相比,水平移动了 10 10 10像素,垂直方向回到了原来的高度。
题目内容均收集自互联网,如若此项内容侵犯了原著者的合法权益,可联系我: (CSDN网站注册用户名: 塔子哥学算法) 进行删除


http://www.ppmy.cn/news/470706.html

相关文章

Flink将数据写入CSV文件后文件中没有数据

Flink中有一个过时的sink方法:writeAsCsv,这个方法是将数据写入CSV文件中,有时候我们会发现程序启动后,打开文件查看没有任何数据,日志信息中也没有任何报错,这里我们结合源码分析一下这个原因. 这里先看一下数据处理的代码 代码中我是使用的自定义数据源生产数据的方式,为了方…

红米note2能刷机没显示无服务器,我的红米note2彻底黑屏变砖了,进不了Fastboot和Recovery模式了,还能救回来吗?...

满意答案 mojsi 2020.03.09 采纳率:44% 等级:12 已帮助:7771人 小米2手机,进入recovery模式和fastboot模式的方法:recovery模式进入方式:关机按住音量上开机键recovery模式进入方式:关机按住…

红米手机TWRP读不了刷机包成功解决记录

我有部没用的红米4A手机,打算刷个魔趣试试,结果问题来了 我的魔趣版本要求TWRP3.2.1以上,好不容易找到红米4A的TWRP3.3.1 结果遇到recovery读不了刷机包问题,百度一下,说是data要格式化, 我用3.3.1版本格式…

红米note手机GPS定位不了

http://jingyan.baidu.com/article/380abd0a71bc061d90192ce2.html 方法/步骤 打开红米的“安全中心” 选择“授权管理” 点击“应用权限管理” 选择“应用管理” 选择地图程序 将“定位”勾选,再重新打开导航,GPS就可以定位了。 来自 “ ITPUB博…

红米除线刷的另外一种救砖方法fastboot

原文来自:https://jingyan.baidu.com/article/48a42057e945bca9242504d7.html , 按照它操做了一下,虽然没有救活我的红米1,但是让我更好的了解了红米的fastboot功能,可以留着作参考。斜体的内容是我加入的,…

红米note9 4G无缘无故不开机 重启后不开机 插充电器无反应 通病维修视频教程

红米note9 4G 不开机 通病 红米note9进9008 红米note9重启,不是电源虚焊,不是cpu和字库虚焊 返修 总结起来大概是换电源IC后可以开机,重新固化电源IC或CPU可以开机,但是用几天后还是会死机没反应,故障依旧。无限返修。…

山东泰安电力学校,华为ensp考试

文章目录 一、考试要求二、作者的拓扑图,作者的x27,y5三、每个设备的代码(可直接复制粘贴运行,端口和连线要一样)SW1SW2R0R1R2 四、每个部分的有运行截图SW1SW2R0R1R2 五、运行成功截图 一、考试要求 考试初始化文件下…

接口自动化项目持续集成到jenkins

目录 前言 一、jdk安装 二、maven的安装和配置 三、git的安装和配置 四、jenkins下载及运行 五、构建项目 总结: 前言 之前项目将接口自动化项目持续集成到了jenkins上,这次专门写篇文章记录下。 持续集成时,主要分为以下几个步骤&…