← 실전 문제

서로 지워지는 대소문자

C++디버깅

이웃한 두 문자가 같은 알파벳의 대문자와 소문자이면 두 문자를 지워요. 지운 뒤 새로 이웃하게 된 문자에도 같은 규칙을 적용해 더 이상 지울 수 없을 때까지 반복해요. 같은 대소문자끼리는 지우지 않아요.

string solution(string text)가 최종 문자열을 반환하도록 잘못된 한 줄을 고쳐 주세요. 길이는 0200, 문자는 az와 A~Z만 사용해요. 빈 문자열을 허용하고 최종 순서는 남은 원문 순서예요.

예시 1: text = "abBAc" → "c". bB를 지우면 aAc가 되고, aA를 지워요.

예시 2: text = "aaA" → "a". 앞의 aa는 같은 소문자라 남기고 뒤 aA만 지워요.

실행 입력은 문자열 전체 한 줄이고, 빈 문자열은 빈 줄이에요. main은 함수 호출 하네스이며 최종 문자열을 출력해요.

예시 입력

abBAc

예상 결과

c

예시 입력

aaA

예상 결과

a
핵심 개념
  • stack-queue: 가장 최근 상태와 먼저 들어온 상태를 구분해요.
  • string-parsing: 문자 종류와 현재 해석 상태를 연결해요.
  • stl-string: 원본 문자열의 인덱스와 문자 순서를 읽어요.

코드 작성과 채점은 로그인 후 이용해요

로그인하고 풀기