반응형
#include <string>
#include <vector>
using namespace std;
void ConvertCharSmallToBig(char* SmallLetter)
{
if(*SmallLetter < 'a')
return;
// 만약에 소문자 대문자 char값을 모른다면 'a' - 'b' 이런식으로 비교해서 넣어도될거같음
else
*SmallLetter -= 32;
}
void ConvertCharBigToSmall(char* BigLetter)
{
if(*BigLetter <= 'Z' && 'A' <= *BigLetter)
{
// 만약에 소문자 대문자 char값을 모른다면 'a' - 'b' 이런식으로 비교해서 넣어도될거같음
*BigLetter += 32;
}
}
string solution(string s) {
string answer = "";
size_t Size = s.size();
int Count = 0;
for(size_t i = 0; i < Size; ++i)
{
if(s[i] == ' ')
{
ConvertCharSmallToBig(&answer[i - Count]);
Count = 0;
answer += ' ';
}
else
{
answer += s[i];
ConvertCharBigToSmall(&answer[i]);
++Count;
}
}
// 마지막에 for문에서 공백을 못찾기때문에 마지막 값을 카운트를 이용해서 넣어줌
ConvertCharSmallToBig(&answer[answer.size() - Count]);
Count = 0;
return answer;
}
반응형
'프로그래머스 > lv2' 카테고리의 다른 글
프로그래머스 : 다음 큰 숫자 (lv2) C++ (2) | 2022.10.06 |
---|---|
프로그래머스 : 숫자의 표현 (lv2) C++ (0) | 2022.10.06 |
프로그래머스 : 올바른 괄호 (lv2) C++ (0) | 2022.10.06 |
프로그래머스 : 최솟값 만들기 (lv2) C++ (0) | 2022.10.06 |
프로그래머스 : 최댓값과 최솟값 (lv2) C++ (0) | 2022.10.06 |
댓글