• [Swift]LeetCode1323. 6和9组成的最大数字 | Maximum 69 Number


    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
    ➤微信公众号:山青咏芝(let_us_code)
    ➤博主域名:https://www.zengqiang.org
    ➤GitHub地址:https://github.com/strengthen/LeetCode
    ➤原文地址:https://www.cnblogs.com/strengthen/p/12213368.html
    ➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
    ➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

    Given a positive integer num consisting only of digits 6 and 9.

    Return the maximum number you can get by changing at most one digit (6 becomes 9, and 9 becomes 6).

    Example 1:

    Input: num = 9669
    Output: 9969
    Explanation:
    Changing the first digit results in 6669.
    Changing the second digit results in 9969.
    Changing the third digit results in 9699.
    Changing the fourth digit results in 9666. 
    The maximum number is 9969.
    Example 2:

    Input: num = 9996
    Output: 9999
    Explanation: Changing the last digit 6 to 9 results in the maximum number.
    Example 3:

    Input: num = 9999
    Output: 9999
    Explanation: It is better not to apply any change.
     

    Constraints:

    1 <= num <= 10^4
    num's digits are 6 or 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
    解释:无需改变就已经是最大的数字了。
     

    提示:

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


    Runtime: 8 ms
    Memory Usage: 20.9 MB
     1 class Solution {
     2     func maximum69Number (_ num: Int) -> Int {
     3         var i:Int = 1
     4         var j:Int = 0
     5         var n:Int = num
     6         while(n > 0)
     7         {
     8             if  n % 10 == 6
     9             {
    10                 j = i
    11             }
    12             n /= 10
    13             i *= 10
    14         }
    15         return j == 0 ? num : num + j * 3
    16     }
    17 }
  • 相关阅读:
    高性能IO模型浅析
    使用vbs脚本进行批量编码转换
    Linux模块机制浅析
    源文件移动后gdb不显示代码的原因
    Linux的原子操作与同步机制
    ARM的常数表达式
    安装卡巴 OFFICE链接 出现这个过程被中断,由于本机的限制
    selenium “could not be scrolled into view”
    bs4 FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?
    vim实现实时自动保存
  • 原文地址:https://www.cnblogs.com/strengthen/p/12213368.html
Copyright © 2020-2023  润新知