Skip to content

Prepare For Coder Interview – Denny

  • Basic
  • Medium
  • Hard
  • Architect
  • Life

LeetCode: Remove 9

Posted on May 7, 2018July 26, 2020 by braindenny

Remove 9



Similar Problems:

  • Nth Digit
  • CheatSheet: Leetcode For Code Interview
  • CheatSheet: Common Code Problems & Follow-ups
  • Tag: #baseconversion, #math

Start from integer 1, remove any integer that contains 9 such as 9, 19, 29…

So now, you will have a new integer sequence: 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, …

Given a positive integer n, you need to return the n-th integer after removing. Note that 1 will be the first integer.

Example 1:
Input: 9
Output: 10

Hint: n will not exceed 9 x 10^8.

Github: code.dennyzhang.com

Credits To: leetcode.com

Leave me comments, if you have better ways to solve.


  • Solution: without array
// https://code.dennyzhang.com/remove-9
// Basic Ideas: base conversion
//
//  Convert n to base 9
//
// Complexity: Time O(log(n)), Space O(1)
func newInteger(n int) int {
    res, base := 0, 1
    for n != 0 {
        res = res+n%9*base
        n = n/9
        base *= 10
    }
    return res
}

  • Solution: with array
// https://code.dennyzhang.com/remove-9
// Basic Ideas: base conversion
//
//  Convert n to base 9
//
// Complexity: Time O(1), Space O(1)
func newInteger(n int) int {
    nums := []int{}
    for n != 0 {
        nums = append(nums, n%9)
        n = n/9
    }
    res := 0
    for i:=len(nums)-1; i>=0; i-- {
        res = res*10+nums[i]
    }
    return res
}
linkedin
github
slack

Post Views: 6
Posted in HardTagged #math, baseconversion

Post navigation

LeetCode: Integer to Roman
LeetCode: Image Overlap

Leave a Reply Cancel reply

Your email address will not be published.

Tags

#array #backtracking #bfs #binarytree #bitmanipulation #blog #classic #codetemplate #combination #dfs #dynamicprogramming #game #graph #greedy #heap #inspiring #interval #linkedlist #manydetails #math #palindrome #recursive #slidingwindow #stack #string #subarray #trie #twopointer #twosum binarysearch editdistance hashmap intervaldp knapsack monotone oodesign presum rectangle redo review rotatelist series sql treetraversal unionfind

Recent Posts

  • a
  • a
  • a
  • a
  • a

Recent Comments

    Archives

    Categories

    • Amusing
    • Basic
    • Easy
    • Hard
    • Life
    • Medium
    • Resource
    • Review
    • Series
    • Uncategorized
    Proudly powered by WordPress | Theme: petals by Aurorum.