프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
#include <string>
#include <vector>
using namespace std;
string solution(string s) {
string answer = "";
bool start = false;
for(int i=0;i<s.length();i++){
if(!start and s[i] != ' '){ // 단어 첫글자인 경우
start = true;
answer += toupper(s[i]);
}
else{ // 단어 첫글자가 아닌 경우
if(s[i]==' '){ // 공백인 경우
start = false;
answer += s[i];
}
else{
answer += tolower(s[i]);
}
}
}
return answer;
}
한 단어가 시작되면 첫 글자는 toupper 함수를 이용하여 대문자로 바꿔주고, start는 true로 값을 변경한다.
단어가 시작되고 나서는 뒤에 나오는 글자들을 소문자로 바꿔주며 answer 문자열에 더한다. 그러다가 공백이 나오면 한 단어가 끝난 것이므로 start 값을 false로 수정해준다.
'문제풀이 > C, C++' 카테고리의 다른 글
[C언어] 백준 2302번 극장 좌석 (0) | 2023.11.16 |
---|---|
[C언어] 백준 13905번 세부 (0) | 2023.11.16 |
[C++] 2178번 미로 탐색 (0) | 2021.11.04 |
[C++] 백준 1920번 수 찾기 (0) | 2021.11.02 |
[C++] 백준 1181번 단어 정렬 (0) | 2021.11.02 |
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
#include <string> #include <vector> using namespace std; string solution(string s) { string answer = ""; bool start = false; for(int i=0;i<s.length();i++){ if(!start and s[i] != ' '){ // 단어 첫글자인 경우 start = true; answer += toupper(s[i]); } else{ // 단어 첫글자가 아닌 경우 if(s[i]==' '){ // 공백인 경우 start = false; answer += s[i]; } else{ answer += tolower(s[i]); } } } return answer; }
한 단어가 시작되면 첫 글자는 toupper 함수를 이용하여 대문자로 바꿔주고, start는 true로 값을 변경한다.
단어가 시작되고 나서는 뒤에 나오는 글자들을 소문자로 바꿔주며 answer 문자열에 더한다. 그러다가 공백이 나오면 한 단어가 끝난 것이므로 start 값을 false로 수정해준다.
'문제풀이 > C, C++' 카테고리의 다른 글
[C언어] 백준 2302번 극장 좌석 (0) | 2023.11.16 |
---|---|
[C언어] 백준 13905번 세부 (0) | 2023.11.16 |
[C++] 2178번 미로 탐색 (0) | 2021.11.04 |
[C++] 백준 1920번 수 찾기 (0) | 2021.11.02 |
[C++] 백준 1181번 단어 정렬 (0) | 2021.11.02 |