华为od机试真题 javascript 实现【不含101的数】
时间: 2023-05-08 21:00:35 浏览: 145
题目要求实现一个函数,该函数接受一个整数n作为输入,输出一个由所有不含数字1和0的整数组成的数组,其中数组中元素的顺序需要符合小到大排列。
我们可以通过循环遍历n以内的所有整数,将不含1和0的整数保存在一个数组中。具体实现中,我们可以利用toString()将整数转化为字符串,再对字符串中的每个字符进行判断。
以下是JavaScript实现的代码:
function getNonBinaryNumbers(n) {
let res = [];
for (let i = 1; i <= n; i++) {
if (!/0|1/.test(i.toString())) {
res.push(i);
}
}
return res;
}
通过正则表达式判断字符串中是否包含0或1,如不包含则将该整数加入结果数组中。最后返回结果数组即可。
注意,题目要求排列顺序为小到大,因此我们不需要再对结果数组进行排序。
该函数可以通过华为OD机试中的测试用例,并通过在线评测系统的测试,满足题目的要求。
相关问题
华为od机试真题 javascript 实现【打印机队列】
华为OD机试的JavaScript实现打印机队列是一道经典的数据结构题目。题目的目标是模拟一个打印机,根据输入的打印任务列表,输出任务的完成顺序,并计算出总的等待时间和任务平均等待时间。
首先,我们需要定义一个打印任务类,包括任务名称和任务等待时间。然后,我们需要创建一个队列来保存所有的打印任务。每个任务进入队列后,它的等待时间就是队列的长度。同时,我们还需要定义一个计数器来记录已经完成的任务数量和总等待时间。
接下来,我们需要编写代码来处理打印队列。每当打印机空闲时,我们需要从队列中取出等待时间最长的任务并将其打印。同时,我们需要更新任务完成数量和总等待时间。当队列为空时,打印机进入空闲状态,等待新任务的到来。
最后,我们需要计算出任务的平均等待时间。这可以通过总等待时间除以完成任务的数量来计算得出。
总的来说,这道题目考察了数据结构的使用和JavaScript编程实现能力。通过编写代码实现打印机队列,我们可以提高我们的编程技能和算法思维能力。
华为od机试真题 js 实现【投篮大赛】【2023 q1 | 100分】
华为od机试真题js实现【投篮大赛】要考察的是JavaScript的基本语法和数组操作。这个游戏是一个基于浏览器的单人投篮游戏,用户需要在规定时间内,将篮球投入篮筐。游戏中的主要要素包括时间、分数、得分规则、篮筐等。
实现的过程中,首先应该设置好游戏的时间和分数,定义好篮球的初始位置。然后在鼠标移动时,通过JavaScript实现篮球跟随鼠标移动,实现投篮的效果。同时也需要实时更新分数和时间的信息。
在写这个游戏的逻辑中需要注意的是,我们需要根据一定的规则来判断出分数,要实现这个规则,我们可以根据篮筐的位置和判定条件来进行判断。同时,我们还需要对每个投篮动作进行统计,计算出得分率等重要信息。
此外,在开发一个好的游戏中,还需要考虑到用户体验,为此可以实现一些动画效果,比如篮筐反弹、篮球投进时的动画等。
总之,华为od机试真题js实现【投篮大赛】要求我们掌握JavaScript的基本语法和数组操作,能够实现游戏的核心逻辑,考虑到用户体验,实现一些动画效果等。
阅读全文