반응형
https://leetcode.com/problems/reverse-string-ii/description/
문자열을 다루는 문제였습니다.
📕 풀이방법
📔 풀이과정
2*k만큼 증가시키며 s.size()까지 for loop를 수행하며 규칙에 따라 글자를 뒤집습니다. k와 남은 글자수 sSize - i의 최솟값을 len에 저장합니다. 이는 곧 뒤집을 문자열의 길이가 됩니다. 매 loop마다 이 길이만큼 문자를 뒤집습니다.
📔 정답 출력 | 반환
뒤집은 결과의 s를 반환합니다.
📕 Code
📔 C++
class Solution {
public:
string reverseStr(string s, int k) {
int sSize = s.size();
for(int i = 0; i < sSize; i += 2*k) {
int len = min(k, sSize - i);
reverse(s.begin() + i, s.begin() + len + i);
}
return s;
}
};
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > String' 카테고리의 다른 글
(C++) - LeetCode (easy) 819. Most Common Word (0) | 2023.07.20 |
---|---|
(C++) - LeetCode (easy) 557. Reverse Words in a String III (0) | 2023.04.19 |
(C++) - LeetCode (easy) 521. Longest Uncommon Subsequence I (0) | 2023.04.14 |
(C++) - LeetCode (easy) 482. License Key Formatting (0) | 2023.03.27 |
(C++) - LeetCode (easy) 459. Repeated Substring Pattern (0) | 2023.03.22 |