#유코딩 코딩연습장

[프로그래머스 Level# 2] JadenCase 문자열 만들기 본문

# 프로그래머스 - 알고리즘/프로그래머스 2단계를 풀어보자

[프로그래머스 Level# 2] JadenCase 문자열 만들기

YooCoding 2021. 7. 21. 23:20

https://programmers.co.kr/learn/courses/30/lessons/12951

 

코딩테스트 연습 - JadenCase 문자열 만들기

JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건

programmers.co.kr

 

 

문제 설명

JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건

  • s는 길이 1 이상인 문자열입니다.
  • s는 알파벳과 공백문자(" ")로 이루어져 있습니다.
  • 첫 문자가 영문이 아닐때에는 이어지는 영문은 소문자로 씁니다. ( 첫번째 입출력 예 참고 )

입출력 예

sreturn

"3people unFollowed me" "3people Unfollowed Me"
"for the last week" "For The Last Week"

 

 

 

#include <string>
#include <vector>
using namespace std;

string solution(string s) {
	string answer = "";
	bool isChange = false;
	for (int i = 0; i < s.size(); i++)
	{
		if (!isChange)
		{
			if (s[i] >= 97 && s[i] <= 122)
			{
				s[i] = s[i] - 32;
			}
			else if (s[i] == ' ')
			{
				continue;
			}
			isChange = true;
		}
		else
		{
			if (s[i] >= 52 && s[i] <= 90)
			{
				s[i] = s[i] + 32;
				continue;
			}
			if (s[i] == ' ')    isChange = false;
		}
	}
	return s;
}
Comments