华为OD --- 靠谱的车

华为OD --- 靠谱的车

题目

OJ用例

测试用例case

独立实现

思路

独立实现的思路比较简单,直接建一个长度为N的数组,然后找出index中不包含4的项数即可

源码

js 复制代码
const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void (async function () {
    // 输入实际付费的钱
    const payCount = Number(await readline());
    // const payCountList = new Array(payCount).fill(1)
    let numberIn4 = 0

    for (let i = 1; i <= payCount; i++) {

        if(`${i}`.includes(4)){
            numberIn4 ++
        }
    }

    console.log(payCount - numberIn4)
})();

tips 未通过全部用例 部分用例超时

参考实现

思路

其实看题目有想过是进制的解法,但是之前了解的进制都是满n进1,但是没有碰到这种满n+1的算法

算法思路如下
看位数是否大于进制数,如果大于 则当前位-1乘以进度的当前位次方,如果不大于则直接用当前位乘以进度的当前位次方

可能比较抽象,这里举两个🌰

这题的进制数是4 进度是9

以100为🌰

1 < 4 用1 * 9^2 = 81

0 < 4 用0 * 9^1 = 0

0 < 4 用0 * 9^0 = 0

最终得出81

再以501为🌰

5 > 4? (5 - 1) * 9 ^2 = 324

0 > 4? 0 * 9 ^1

1 > 4? 1 * 9 ^0 = 1

最终得 325

源码实现

js 复制代码
 const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void (async function () {
    // 输入实际付费的钱
    const payCount = await readline();
    let result = 0
    for (let i = 0 ; i < payCount.length; i++) {
        result += payCount[i] > 4 ? (payCount[i] - 1) * Math.pow(9, payCount.length - i - 1) : payCount[i]  * Math.pow(9, payCount.length - i - 1)
    }
    console.log(result)
})();
相关推荐
西电研梦1 天前
26西电考研 | 寒假开始,机试 or C语言程序设计怎么准备?
c语言·考研·华为od·研究生·西安电子科技大学·计算机408
无限码力2 天前
华为OD技术面真题 - Mysql相关 - 4
mysql·华为od·华为od技术面真题·华为od技术面八股·华为od技术面八股文·华为od技术面mysql相关
无限码力2 天前
华为OD机试双机位C卷 - FLASH坏块监测系统 (C语言 & C++ & Python & JAVA & JS & GO)
华为od·华为od机试真题·华为od机试双机位c卷·华为od上机考试双机位c卷·华为od上机考试真题·华为od机考真题·华为odflash坏块监测系统
无限码力2 天前
华为OD技术面真题 - 计算机网络相关 - 4
计算机网络·华为od·华为od技术面真题·华为od技术面计算机八股·华为od技术面计算机网络真题
想七想八不如114083 天前
2019机试真题
java·华为od·华为
开开心心_Every6 天前
家常菜谱软件推荐:分类齐全无广告步骤详细
linux·运维·服务器·华为od·edge·pdf·华为云
无限码力7 天前
华为OD2026最新机试双机位C卷机考真题目录含考点说明 (持续更新)
华为od·华为od机考·华为od题库·华为od机试·华为od机试双机位c卷·华为od最新上机考试题库·od机考题库
无限码力7 天前
华为OD技术面真题 - 数据库MySQL - 3
数据库·mysql·华为od·八股文·华为od技术面八股文
无限码力7 天前
华为OD技术面真题 - JAVA开发 - 5
java·华为od·面试·华为od技术面真题·华为od技术面八股·华为od技术面java八股文