【LeetCode每日一题】——1323.6 和 9 组成的最大数字
创始人
2024-05-29 16:39:43
0

文章目录

  • 一【题目类别】
  • 二【题目难度】
  • 三【题目编号】
  • 四【题目描述】
  • 五【题目示例】
  • 六【解题思路】
  • 七【题目提示】
  • 八【时间频度】
  • 九【代码实现】
  • 十【提交结果】

一【题目类别】

  • 贪心算法

二【题目难度】

  • 简单

三【题目编号】

  • 1323.6 和 9 组成的最大数字

四【题目描述】

  • 给你一个仅由数字 6 和 9 组成的正整数 num。
  • 你最多只能翻转一位数字,将 6 变成 9,或者把 9 变成 6 。
  • 请返回你可以得到的最大数字。

五【题目示例】

  • 示例 1:

    • 输入:num = 9669
    • 输出:9969
    • 解释:
      • 改变第一位数字可以得到 6669 。
      • 改变第二位数字可以得到 9969 。
      • 改变第三位数字可以得到 9699 。
      • 改变第四位数字可以得到 9666 。
      • 其中最大的数字是 9969 。
  • 示例 2:

    • 输入:num = 9996
    • 输出:9999
    • 解释:将最后一位从 6 变到 9,其结果 9999 是最大的数。
  • 示例 3:

    • 输入:num = 9999
    • 输出:9999
    • 解释:无需改变就已经是最大的数字了。

六【解题思路】

  • 本题思路较简单,只需要从高位向低位搜索,遇到666就换成999即可,因为高位的值被替换后的值肯定大于低位被替换后的值
  • 当然,具体实现可以有两种方法:
    • ① 把数字的每一位都取出来,然后从高位到低位扫描,遇到666就替换为999即可,最后再将数字拼装返回
    • ② 从高位到低位扫描,不过采用的方法是取模和除法,遇到666就加对应位次的3kkk(kkk表示对应位次000的个数),这样也能实现666到999的转换
  • 最后返回结果即可

七【题目提示】

  • 1<=num<=1041 <= num <= 10^41<=num<=104
  • num每一位上的数字都是6或者9。num 每一位上的数字都是 6 或者 9 。num每一位上的数字都是6或者9。

八【时间频度】

  • 时间复杂度:O(1)O(1)O(1)
  • 空间复杂度:O(1)O(1)O(1)

九【代码实现】

  1. Java语言版
class Solution {public int maximum69Number (int num) {if(num / 1000 == 6){return num + 3000;}else if(num % 1000 / 100 == 6){return num + 300;}else if(num % 100 / 10 == 6){return num + 30;}else if(num % 10 == 6){return num + 3;}return num;}
}
  1. C语言版
int maximum69Number (int num)
{if(num / 1000 == 6){return num + 3000;}else if(num % 1000 / 100 == 6){return num + 300;}else if(num % 100 / 10 == 6){return num + 30;}else if(num % 10 == 6){return num + 3;}return num;
}
  1. Python版
class Solution:def maximum69Number (self, num: int) -> int:if num // 1000 == 6:return num + 3000elif num % 1000 // 100 == 6:return num + 300elif num % 100 // 10 == 6:return num + 30elif num % 10 == 6:return num + 3return num

十【提交结果】

  1. Java语言版
    在这里插入图片描述

  2. C语言版
    在这里插入图片描述

  3. Python语言版
    在这里插入图片描述

相关内容

热门资讯

资本界金控(00204.HK)... 格隆汇7月2日丨资本界金控(00204.HK)公告,公司近期与江苏福万代科技信息有限公司("福万代"...
新希望:独立董事彭龙接受纪律审... 转自:财联社【新希望:独立董事彭龙接受纪律审查和监察调查】财联社7月2日电,新希望公告,公司独立董事...
3岁萌娃迷路街头,妈妈急疯!两... 来源:杭州公安 “你好 我在天万街与羊头坝路交叉口的桥上 这边有个小孩子找不到家人一直在哭” 6月2...
中考成绩单|低波策略业绩盘点 (转自:国泰基金微幸福)
华菱钢铁:投资者建议连续三年回... 投资者提问:回购注销是财务手段里提升pb最稳定最可靠最有效的方式,在pb回升到1之前,每年分红可以少...
今年前5个月销量排名前十位轿车... 转自:北京商报北京商报讯(记者 刘晓梦)7月2日,据中国汽车工业协会统计分析,今年前5个月,销量排名...
法国已有2人死于热浪 转自:新华社新华社巴黎7月2日电(记者罗毓)法国商业调频电视台2日上午报道,最近该国遭遇强热浪天气,...
赛意信息(300687.SZ)... 格隆汇7月2日丨赛意信息(300687.SZ)公布,截至2025年6月30日,公司通过股份回购专用证...
比亚迪汽车:海洋网累计销售超5... 7月2日,比亚迪汽车官方微博显示,比亚迪海洋网6月热销196766辆,同比增长24.6%。2025年...
能特科技:拟以3亿元-5亿元回... 格隆汇7月2日|能特科技公告,公司拟使用自有资金及自筹资金,本次回购股份将全部用于注销并相应减少注册...