[C++로 풀이] JadenCase 문자열 만들기 ⭐⭐
Categories: Programmers
Tags: Coding Test Algorithm
📌 JadenCase 문자열 만들기
난이도 ⭐⭐
🚀 문제
🚀 내 풀이 ⭕
#include <string>
#include <vector>
using namespace std;
string solution(string s) {
string answer = s;
bool newWord = true;
for(int i = 0; i < answer.length(); i++)
{
if (answer[i] == ' ')
newWord = true;
else if (newWord)
{
newWord = false;
if (answer[i] >= 'a' && answer[i] <= 'z')
answer[i] -= 32;
}
else
{
if (answer[i] >= 'A' && answer[i] <= 'Z')
answer[i] += 32;
}
}
return answer;
}
- 첫 문자를 마주할 땐
newWord
가 true인 상태. (공백일 때 true로 바꿔놔서)- 첫 문자(
newWord
true)가 소문자면 대문자로 바꿔주면 되고 - 첫 문자가 아닌 문자들이(
newWord
false) 대문자면 소문자로 바꿔주면 된다.
- 첫 문자(
그냥 flag 사용할 필요 없이 이전 문자 answer[i-1]
이 공백이면 첫문자인 것이니 if(answer[i-1] == ‘ ‘)로 첫문자를 따졌어도 괜찮았을 것 같다.
tolower
, toupper
함수를 사용하여 변환해도 괜찮다.
🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄
Leave a comment