[Algorithm] 이상한 문자 만들기

2024. 12. 26. 10:20·Algorithm/Practice

 

문제 설명

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 

각 단어는 하나 이상의 공백문자로 구분되어 있습니다.

각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.

 

문제 유형

  • 문자열 치환

 

의사코드

  1. 플래그 변수를 선언한다.
  2. [반복문] 문자열 길이만큼 반복한다.
    1. 문자열의 요소가 공백(' ')이라면 플래그를 초기화(true)한다.
    2. 플래그 값이 true라면 문자열의 요소를 대문자로 치환하고 다시 대입한다.
    3. 플래그 값이 false라면 문자열의 요소를 소문자로 치환하고 다시 대입한다.
    4. 플래그 값을 반전한다.
  3. 결과값을 반환한다.

 

코드 작성

#include <string>
#include <cctype>

using namespace std;

string solution(string s) {
    bool flag = true;

    for (int i = 0; i < s.length(); i++)
    {
        if (s[i] == ' ')
        {
            flag = true;
            continue;
        }
        
        if (flag)
        {
            s[i] = toupper(s[i]);
        }
        else
        {
            s[i] = tolower(s[i]);
        }
        
        flag ^= true;
    }
    
    return s;
}

 

사용한 함수

  • 소문자로 변환함수
    • toupper(char)
    • #include <cctype>
  • 대문자로 변환함수
    • tolower(char)
    • #include <cctype>

 

 

 

'Algorithm > Practice' 카테고리의 다른 글

[Algorithm] 크기가 작은 부분 문자열  (0) 2024.12.26
[Algorithm] 삼총사  (2) 2024.12.26
[Algorithm] 최대공약수와 최소공배수  (0) 2024.12.23
[Algorithm] 직사각형 별찍기  (1) 2024.12.22
[Algorithm] 행렬의 덧셈  (0) 2024.12.20
'Algorithm/Practice' 카테고리의 다른 글
  • [Algorithm] 크기가 작은 부분 문자열
  • [Algorithm] 삼총사
  • [Algorithm] 최대공약수와 최소공배수
  • [Algorithm] 직사각형 별찍기
DevColIn
DevColIn
복잡함을 단순하게
  • DevColIn
    심플한 코딩생활
    복잡함을 단순하게
  • 전체
    오늘
    어제
    • 전체보기 (223)
      • Unreal 부트캠프 (49)
        • TIL (34)
        • 사전캠프 (7)
        • 본캠프 (8)
      • Unrael (10)
        • 환경설정 (0)
        • Basic (19)
        • Component (5)
        • GAS (GameplayAbilitySystem) (3)
        • AI (2)
        • Implement (10)
        • UI (1)
        • Error (1)
        • Network (2)
        • Tip (1)
      • Level Design (5)
      • Math (1)
      • Design Pattern (16)
      • Computer Science (2)
        • Network (1)
        • Database (1)
      • Algorithm (79)
        • Basic (4)
        • Practice (74)
      • C++ (4)
        • Basic (4)
      • Tool (0)
      • Game (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    사전캠프
    assetmanager
    Algorithm
    gas
    DesignPattern
    Design Pattern
    본캠프
    Til
    GameplayEffect
    디자인 패턴
    알고리즘
    퀘스트
    Animation
    Implement
    소프트 레퍼런신
    내일배움캠프
    레벨디자인
    actor
    unreal
    디자인패턴
    게임동기화
    tsoftobjectptr
    AI
    c++
    unrealengine
    액터
    하드 레퍼런싱
    component
    KPT회고
    basic
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
DevColIn
[Algorithm] 이상한 문자 만들기
상단으로

티스토리툴바