본문 바로가기
프로그래머스 C++/Level.0

프로그래머스 C++ Level. 0 문자열 뒤집기

by yeni_0224 2023. 3. 8.
728x90
반응형

문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요.

#include <string>
#include <vector>
#include <algorithm>

using namespace std;

string solution(string my_string) {
    
    reverse(my_string.begin(), my_string.end());
    
    return my_string;
}

이전 배열과 똑같고 단지 문자열을 뒤집는 것이라고만 문제가 바뀐 것이기 때문에 역시나 reverse함수를 사용해주었다.

새로 배운것은 또 다시 써보고 활용해보며 내것으로 만들어야한다. 덕분에 상당히 쉽게 문제를 해결할 수 있었다. 나중에 reverse를 활용해야하는 곳이 발생한다면 바로 쓸 수 있었으면 좋겠다 :)

 

다른 분들의 문제 풀이

include <string>
#include <vector>
using namespace std;
string solution(string my_string) {
    string answer = "";
    for(int i = my_string.size() - 1; i >= 0; i--)
        answer += my_string[i];
    return answer;
}

for문을 통해 배열의 index가 큰 것 부터 작은 것까지 answer로 리턴하도록 반복한 듯하다

이 방법도 너무 좋은 것 같다

#include <string>
#include <vector>
#include <algorithm>

using namespace std;

string solution(string my_string) {
    string answer = "";

    reverse(my_string.begin(), my_string.end());
    answer = my_string;

    return answer;
}

프로그래머스가 제공하는 answer 변수로 반환하고 싶다면

my_string 문자열을 다시 answer에 넣어주어

return answer; 하면 깔끔하다. 이부분도 참고하면 좋을 것 같아서 적어본다

물론 다른 분들의 풀이 중 하나를 가져왔다.

 

728x90
반응형