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

news/2024/7/20 18:42:29 标签: 华为od, java, python, 算法

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

题目描述

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.niftyadmin.cn/n/450046.html

相关文章

【Leetcode60天带刷】day11栈与队列——20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值

题目: 20. 有效的括号 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个…

day10 伪操作与混合编程

伪操作 伪操作:不会生成代码,只是在编译之前告诉编译器怎么编译 .global symbol 将symbol声明成全局符号.local symbol 将symbol声明成局部符号.equ DATA, 0xFFMOV R1, #DATA.macro FUNCMOV R1, #1MOV R2, #2.endmFUNC.if 0MOV R1, #1MOV R2, #2.endif…

谈谈:File、Blob、FileReader、ArrayBuffer、base64

JavaScript 提供了一些 API 来处理文件或原始文件数据,例如:File、Blob、FileReader、ArrayBuffer、base64 等。下面就来看看它们都是如何使用的,它们之间又有何区别和联系。 1. Blob Blob全称为binary large Object 即二进制大对象&#x…

MySQL优化--undo log和redo log的区别

首先我们需要知道两个概念 缓冲池(buffer pool):主内存中的一个区域,里面可以缓存磁盘上经常操作的真实数据,在执行增删改查操作时,先操作缓冲池中的数据(若缓冲池没有数据,则从磁盘加载并缓存…

专访蘑菇物联沈国辉:做工业AI时代的推动者

在中国制造迈向高质量发展的进程中,数智化转型会成为破局之道。在这其中,蘑菇物联除了是一个本分的答题者,还是一个善于发现问题的贡献者。 作者|思杭 编辑|皮爷 出品|产业家 从广州造纸厂到广州造船厂,从第一橡胶厂到电池厂&a…

湖大CG满分教程:作业训练一编程题5. 合法的括号串

【问题描述】 一个合法的括号串&#xff0c;是指只包含括号的串&#xff0c;如果满足如下条件&#xff1a; &#xff08;1&#xff09;<> () [] {} 这四对括号是合法的&#xff1b; &#xff08;2&#xff09;如果r是合法括号串&#xff0c;则<r> (r) [r] {r}也…

利用R语言通过百度地图API进行批量地理编码

利用R语言通过百度地图API进行批量地理编码 当您有大量的地点名称需要在地图上来呈现时&#xff0c;首先要在在线地图上找到该地址的坐标&#xff0c;通常是指经纬度&#xff0c;如果能够用代码来实现&#xff0c;便少了许多费时费力的体力活儿&#xff0c;以下将详细介绍地理…

代理ip会不会影响网络速度和稳定性

代理ip是一种可以帮助用户隐藏真实IP地址的技术&#xff0c;通常使用代理服务器作为中介来连接互联网。代理ip在网络安全、隐私保护、跨区域访问等方面都有广泛的应用。但是&#xff0c;使用 代理ip是否会影响网络速度和稳定性这一问题也一直备受关注。下面是一些有关代理ip对网…