[LeetCode] Minimum Moves to Convert String

아르당·2026년 7월 30일

LeetCode

목록 보기
434/579
post-thumbnail

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

Problem

n개의 'X', 'O' 문자로 구성된 문자열 s가 주어진다.
동작은 문자열에서 연속된 3개의 문자를 'O'로 바꾸는 것을 의미한다. 이때 이미 'O'인 문자는 그래도 유지한다.
s의 모든 문자를 'O'로 바꾸는데 필요한 최소 횟수를 반환해라.

Example

#1
Input: s = "XXX"
Output: 1

#2
Input: s = "XXOX"
Output: 2

#3
Input: s = "OOOO"
Output: 0

Constraints

  • 3 <= s.length <= 1000
  • s[i]는 'X', 'O' 둘 중 하나이다.

Solved

class Solution {
    public int minimumMoves(String s) {
        int move = 0;

        for(int i = 0; i < s.length();){
            if(s.charAt(i) == 'X'){
                move++;
                i += 3;
            }else{
                i++;
            }
        }

        return move;
    }
}
profile
내 마음대로 코드 작성하는 세상

0개의 댓글