반응형
https://school.programmers.co.kr/learn/courses/30/lessons/181913?language=cpp
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
답
#include <bits/stdc++.h>
using namespace std;
string solution(string my_string, vector<vector<int>> queries) {
for(int i=0;i<queries.size();i++){
reverse(my_string.begin()+queries[i][0],my_string.begin()+queries[i][1]+1);
}
return my_string;
}
queries의 크기만큼 for문을 돌려준다.(i)
reverse함수를 사용한다. (reverse함수는 c++에서 string 문자열을 거꾸로 돌리는 함수이다.)
이 문제에선 reverse함수를 사용해서 queries[i][0]부분부터 queries[i][1]부분까지 거꾸로 돌리게 해서 풀었다.
참고
reverse 함수는
reverse(stringname.begin(),stringname.end());
보통 이렇게 쓴다.
시작부터 끝까지 뒤집을 수 있다.
만약 다른문제를 풀떄 이번 문제처럼 특정부분을 뒤집고 싶으면
reverse(stringname.begin()+a,stringname.begin()+b+1));
이런식으로 쓰면 a부터b까지를 stringname에서 뒤집을 수 있다.
끝
반응형
'c++ > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 배열 만들기 4(c++) (0) | 2023.12.24 |
---|---|
[프로그래머스] 할 일 목록(c++) (0) | 2023.12.24 |
[프로그래머스] 배열 만들기 6(c++) (0) | 2023.12.24 |
[프로그래머스] 전국 대회 선발 고사(c++) (0) | 2023.12.24 |
[프로그래머스] 문자열 잘라서 정렬하기(c++) (0) | 2023.12.24 |