Pintia题解——7-7出租 喜欢ヅ旅行 2023-10-15 23:59 66阅读 0赞 #### 目录 #### * 7-7 出租 * * 原题: * 解题思路: * JavaScript(node)代码: * 复杂度分析: ## 7-7 出租 ## ### 原题: ### 一时间网上一片求救声,急问这个怎么破。其实这段代码很简单,`index`数组就是`arr`数组的下标,`index[0]=2` 对应 `arr[2]=1`,`index[1]=0` 对应 `arr[0]=8`,`index[2]=3` 对应 `arr[3]=0`,以此类推…… 很容易得到电话号码是`18013820100`。 本题要求你编写一个程序,为任何一个电话号码生成这段代码 —— 事实上,只要生成最前面两行就可以了,后面内容是不变的。 **输入格式:** 输入在一行中给出一个由11位数字组成的手机号码。 **输出格式:** 为输入的号码生成代码的前两行,其中`arr`中的数字必须按递减顺序给出。 . ### 解题思路: ### 1. 使用 `new Set(input)` 构造一个去重的 Set 对象。 2. 将 Set 对象转换为数组,使用扩展运算符 `[... new Set(input)]`。 3. 对数组进行排序,使用 `sort((a, b) => { return b - a })`,按照降序排列。 4. 创建一个新数组 `arr`,用于存储排好序的元素。 5. 将输入字符串 `input` 转换为字符数组,使用 `Array.from(input)`。 6. 使用 `map` 方法遍历字符数组,对每个字符调用回调函数,假设参数为 `index`。 7. 在回调函数内部,利用 `arr.indexOf(index)` 找到字符在 `arr` 数组中的索引 . ### JavaScript(node)代码: ### const r = require("readline"); const rl = r.createInterface({ input: process.stdin }); let buf = [] rl.on('line', (input) => { buf.push(input); }); rl.on('close', () => { const arr = [... new Set(buf[0])].sort((a, b) => { return b - a }); const index = Array.from((buf[0])).map(index => arr.indexOf(index)) console.log(`int[] arr = new int[]{ ${ arr.join(",")}};`); console.log(`int[] index = new int[]{ ${ index.join(",")}};`); }); . ### 复杂度分析: ### ##### 时间复杂度:O(1) ##### ##### 空间复杂度:O(n) #####
相关 Pintia题解——7-10 打印沙漏 目录 7-10 打印沙漏 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-1 柔光的暖阳◎/ 2024年02月27日 06:22/ 0 赞/ 73 阅读
相关 Pintia题解——7-9编程团体赛 目录 7-9 编程团体赛 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-9 忘是亡心i/ 2024年02月27日 05:40/ 0 赞/ 126 阅读
相关 Pintia题解——7-8古风排版 目录 7-8 古风排版 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-8 骑猪看日落/ 2024年02月27日 05:39/ 0 赞/ 72 阅读
相关 Pintia题解——7-27 猜帽子游戏 目录 7-27 猜帽子游戏 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7- 女爷i/ 2024年02月26日 07:46/ 0 赞/ 83 阅读
相关 Pintia题解——7-24 剪切粘贴 目录 7-24 剪切粘贴 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-2 今天药忘吃喽~/ 2024年02月26日 07:45/ 0 赞/ 52 阅读
相关 Pintia题解—— 7-21 试试手气 目录 7-21 试试手气 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-2 谁借莪1个温暖的怀抱¢/ 2024年02月26日 07:43/ 0 赞/ 64 阅读
相关 Pintia题解——7-12 彩虹瓶 目录 7-12 彩虹瓶 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-12 你的名字/ 2024年02月26日 07:40/ 0 赞/ 68 阅读
相关 Pintia题解——7-26进化论 目录 7-26 进化论 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-26 刺骨的言语ヽ痛彻心扉/ 2023年10月16日 14:12/ 0 赞/ 65 阅读
相关 Pintia题解——7-7出租 目录 7-7 出租 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7-7 出租 喜欢ヅ旅行/ 2023年10月15日 23:59/ 0 赞/ 67 阅读
相关 Pintia题解——7-20 拯救外星人 目录 7-20 拯救外星人 原题: 解题思路: JavaScript(node)代码: 复杂度分析: 7- 忘是亡心i/ 2023年10月15日 17:28/ 0 赞/ 71 阅读
还没有评论,来说两句吧...