알고리즘 · 코딩
[프로그래머스] 이상한 문자 만들기
G A
2020. 4. 21. 15:19
문제 링크
https://programmers.co.kr/learn/courses/30/lessons/12930
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
C++ 풀이
#include <string>
#include <vector>
using namespace std;
string solution(string s) {
string answer = "";
bool IsEven = true; //짝수번째 알파벳일 경우 TRUE
for (int i = 0; i < s.length(); i++) {
if (s[i] == ' ') { //공백일 경우
answer += s[i];
IsEven = true;
}
else if (isalpha(s[i])) {
if (IsEven)
answer += toupper(s[i]); //짝수번째 알파벳인 경우 대문자 처리
else
answer += tolower(s[i]); //홀수번째 알파벳인 경우 소문자 처리
IsEven = !IsEven;
}
else { //기타 문자인 경우
answer += s[i];
}
}
return answer;
}
홀수, 짝수 번째인지 판단하는 bool 타입 변수를 두고 풀었다.
반응형