euisblue
12930. 이상한 문자 만들기

Level 1 이상한 문자 만들기

시간 복잡도: O(N)

1#include <bits/stdc++.h> 2 3using namespace std; 4 5string solution(string s) { 6 string ret=""; 7 int index=0; 8 const int SIZE = s.size(); 9 10 for(int i=0; i<SIZE; ++i,++index) { 11 if(s[i]==' ') index=-1; 12 if((index&1) == 0) ret += toupper(s[i]); 13 else ret += tolower(s[i]); 14 } 15 16 return ret; 17}

단순히 문자열의 인덱스만을 보면 안되고, 단어를 공백을 기준으로 분리한 다음, 짝수 위치에 있는 단어는 대문자로 만들어야한다.

my name is라는 문자열이 있다면, 아래와 같은 과정을 거쳐 My Name Is라는 결과가 나온다.

1[0][1] 2 m y => My 3 4[0][1][2][3] 5 n a m e => NaMe 6 7[0][1] 8 i s => Is 9 10==> My NaMe Is