넘치게 채우기

[LeetCode] 796. Rotate String 본문

PS/LeetCode

[LeetCode] 796. Rotate String

riveroverflow 2024. 11. 3. 15:41
728x90
반응형

https://leetcode.com/problems/rotate-string/description/?envType=daily-question&envId=2024-11-03

leetcode - Rotate String

문제 유형: 문자열 처리, 완전 탐색

문제 난이도: Easy

 

문제

Given two strings s and goal, return true if and only if s can become goal after some number of shifts on s.

A shift on s consists of moving the leftmost character of s to the rightmost position.

  • For example, if s = "abcde", then it will be "bcdea" after one shift.

두 문자열 s와 goal이 주어집니다.

s를 쉬프트해서 goal을 만들 수 있다면, true를 반환하시오.

쉬프트는 맨 왼쪽 문자를 맨 오른쪽으로 옮기는걸 말합니다.

 

풀이

문자열을 비교해서 맞으면 true를 반환한다.

그러고, 쉬프트를 한 번 한다.

이를 s의 길이만큼 해보면 된다.

 

코드

C++

class Solution {
public:
    bool rotateString(string s, string goal) {
        int n = s.size();
        for(int i = 0; i < n; ++i) {
            if(s == goal) return true;
            s = s.substr(1, n-1) + s[0];
        }
        return false;
    }
};
728x90
반응형