[C++] 프로그래머스 문자열 바꿔서 찾기
문제설명
문자 "A"와 "B"로 이루어진 문자열 myString과 pat가 주어집니다.
myString의 "A"를 "B"로, "B"를 "A"로 바꾼 문자열의 연속하는 부분 문자열 중
pat이 있으면 1을 아니면 0을 return 하는 solution 함수를 완성하세요.
제한사항
• 1 ≤ myString의 길이 ≤ 100
• 1 ≤ pat의 길이 ≤ 10
◦ myString과 pat는 문자 "A"와 "B"로만 이루어진 문자열입니다.
입출력 예
myString | pat | result |
---|---|---|
“ABBAA” | “AABB” | 1 |
“ABAB” | “ABAB” | 0 |
풀이
먼저 myString의 “A”와 “B” 문자들을 바꾼 뒤 find 함수를 이용하여 pat 문자열이 존재하는지 판단하는 로직을 구현하였습니다.
#include <string>
#include <vector>
using namespace std;
int solution(string myString, string pat) {
int answer = 0;
string converMs = "";
for(int i = 0; i < myString.size(); i++)
{
if(myString[i] == 'A')
converMs.push_back('B');
else
converMs.push_back('A');
}
answer = converMs.find(pat) != string::npos ? 1 : 0;
return answer;
}
결과
Leave a comment