1323. Maximum 69 Number

LeetCode easy original: C# #array #csharp #easy #leetcode #string
選択した UI 言語に合わせて問題文をロシア語から翻訳します。コードは変更しません。

given положительное 整数 num, состоящее только из цифр 6 и 9.

return максимальное number, которое можно получить, изменив не более одной цифры (6 становится 9, а 9 становится 6).

例:

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.

C# 解法

照合済み/オリジナル
public class Solution {
    public int Maximum69Number (int num) {
        char[] numArr = num.ToString().ToCharArray();
        for (int i = 0; i < numArr.Length; i++) {
            if (numArr[i] == '6') {
                numArr[i] = '9';
                break;
            }
        }
        return int.Parse(new string(numArr));
    }
}

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 Maximum69Number (int num) {
        char[] numArr = num.ToString().ToCharArray();
        for (int i = 0; i < numArr.size(); i++) {
            if (numArr[i] == '6') {
                numArr[i] = '9';
                break;
            }
        }
        return int.Parse(new string(numArr));
    }
}

Java 解法

照合済み/オリジナル
class Solution {
    public int maximum69Number (int num) {
        StringBuilder numSB = new StringBuilder();
        numSB.append(num);
        for (int i = 0; i < numSB.length(); ++i) {
            if (numSB.charAt(i) == '6') {
                numSB.setCharAt(i, '9');
                break;
            }
        }
        return Integer.parseInt(numSB.toString());
    }
}

Python 解法

照合済み/オリジナル
class Solution:
    def maximum69Number (self, num: int) -> int:
        num_str = list(str(num))
        for i in range(len(num_str)):
            if num_str[i] == '6':
                num_str[i] = '9'
                break
        return int(''.join(num_str))

Go 解法

照合済み/オリジナル
func maximum69Number(num int) int {
    numStr := []byte(strconv.Itoa(num))
    for i := 0; i < len(numStr); i++ {
        if numStr[i] == '6' {
            numStr[i] = '9'
            break
        }
    }
    result, _ := strconv.Atoi(string(numStr))
    return result
}

Algorithm

1⃣Преобразуйте 入力ное 整数 num в итерируемый и изменяемый объект num_obj.

2⃣Пройдитесь по num_obj и, если найдете цифру 6, замените её на 9 и прекратите итерацию.

3⃣return 整数, преобразованное из измененного num_obj.

😎

Vacancies for this task

有効な求人 with overlapping task tags are 表示.

すべての求人
有効な求人はまだありません。