[LeetCode] Maximum 69 Number

아르당·2026년 4월 20일

LeetCode

목록 보기
273/303
post-thumbnail

문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음

Problem

오직 십진수 6과 9만 포함한 양의 정수 num이 주어진다.
숫자의 한 자리만 변경해서 얻을 수 있는 최대값을 반환해라(6은 9, 9는 6이 된다).

Example

#1
Input: num = 9669
Output: 9969
Explanation:
첫 번째 자리를 바꾼 결과는 6669이다.
두 번째 자리를 바꾼 결과는 9969이다.
세 번째 자리를 바꾼 결과는 9699이다.
네 번째 자리를 바꾼 결과는 9666이다.
가장 큰 숫자는 9969이다.

#2
Input: 9996
Output: 9999
Explanation: 마지막 자리 6을 9로 바꾼 결과가 가장 큰 숫자이다.

#3
Input: num = 9999
Output: 9999
Explanation: 더 큰 숫자가 없어서 바꾸지 않아도 된다.

Constraints

  • 1 <= num <= 10^4
  • num은 숫자 6과 9로만 구성된다.

Solved

class Solution {
    public int maximum69Number (int num) {
        char[] digits = String.valueOf(num).toCharArray();

        for(int i = 0; i < digits.length; i++){
            if(digits[i] == '6'){
                digits[i] = '9';
                break;
            }
        }

        return Integer.parseInt(new String(digits));
    }
}
profile
내 마음대로 코드 작성하는 세상

0개의 댓글