-
프로그래머스 Lv2 JadenCase 문자열 만들기Computer Science/프로그래머스 2023. 10. 2. 18:47
https://school.programmers.co.kr/learn/courses/30/lessons/12951
나는 이 문제를 공백을 찾는 포인터가 npos가 아닐 때 까지 반복문을 돌리며 풀었다.
string 클래스의 find와 substr을 사용했고,
첫번째 문자가 알파벳이라면 대문자로 변경, 그 뒤 문자가 알파벳이라면 소문자로 변경했다.
answer에는 변경 된 문자와 공백을 넣었고
이렇게 다 처리한 문자열의 마지막 공백을 제거해서 문자열을 리턴했다.
#include <string> #include <vector> using namespace std; string space_delimiter = " "; int pos = 1; string solution(string s) { string answer; while(std::string::npos != pos) { pos = s.find(space_delimiter); string w = s.substr(0, pos); if(isalpha(w[0])){w[0] = toupper(w[0]);} for(int i = 1; i < w.size(); ++i) { if(isalpha(w[i])) w[i] = tolower(w[i]); } answer += (w + " "); s.erase(0, pos + space_delimiter.size()); } answer = answer.substr(0, answer.size() - 1); return answer; }
'Computer Science > 프로그래머스' 카테고리의 다른 글
프로그래머스 Lv2 줄 서는 방법 (0) 2023.10.03 프로그래머스 Lv2 행렬의 곱셈 (1) 2023.10.02 프로그래머스 Lv2 N-Queen (0) 2023.10.02 프로그래머스 Lv2 짝지어 제거하기 (0) 2023.09.30 프로그래머스 Lv2 배달 (0) 2023.09.30