660. Remove 9

LeetCode hard original: C# #csharp #hard #leetcode #search #string
선택한 UI 언어에 맞게 문제 텍스트를 러시아어에서 번역합니다. 코드는 변경하지 않습니다.

Начните с целого числа 1, уберите любое number, которое содержит 9, такое как 9, 19, 29...

Теперь у вас будет новая последовательность целых чисел [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, ...].

given 정수 n, return n-е (начиная с 1) 정수 в новой последовательности.

예제

Input: n = 9

Output: 10

C# 해법

매칭됨/원본
public class Solution {
    public int NewInteger(int n) {
        int count = 0;
        int num = 0;
        while (count < n) {
            num++;
            if (!num.ToString().Contains("9")) {
                count++;
            }
        }
        return num;
    }
}

C++ 해법

자동 초안, 제출 전 검토
#include <bits/stdc++.h>
using namespace std;

// Auto-generated C++ draft from the C# solution. Review containers, LINQ and helper types before submit.
class Solution {
public:
    public int NewInteger(int n) {
        int count = 0;
        int num = 0;
        while (count < n) {
            num++;
            if (!num.ToString().Contains("9")) {
                count++;
            }
        }
        return num;
    }
}

Java 해법

매칭됨/원본
public class Solution {
    public int newInteger(int n) {
        int count = 0;
        int num = 0;
        while (count < n) {
            num++;
            if (!Integer.toString(num).contains("9")) {
                count++;
            }
        }
        return num;
    }
}

Algorithm

Инициализация:

Начните с числа 1 и создайте переменную для отслеживания количества найденных чисел, не содержащих цифру 9.

Итерация и проверка:

Последовательно увеличивайте number и проверяйте, содержит ли оно цифру 9.

Если не содержит, увеличьте счетчик.

Поиск n-го числа:

Продолжайте процесс до тех пор, пока не найдете n-е number, не содержащее цифру 9.

😎

Vacancies for this task

활성 채용 with overlapping task tags are 표시됨.

전체 채용
아직 활성 채용이 없습니다.