본문 바로가기
c++/프로그래머스

[프로그래머스] 0 떼기(c++)

by ilp 2024. 1. 31.
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/181847

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr



#include <string>
#include <vector>

using namespace std;

string solution(string n_str) {
    string answer = "";
    bool a=true;
    for(int i=0;i<n_str.size();i++){
        if(n_str[i]=='0'&&a==true){
            
        }
        else{
            a=false;
            answer+=(n_str[i]);
        }
    }
    return answer;
}
1. 변수
  • 'answer': 최종적으로 반환할 문자열을 저장할 변수이다. (초기값은 빈 문자열이다.)
  • 'a': '0'문자를 찾아야 하는 과정인지를 나타내는 변수다. (초기값은 'ture'로 '0'을 찾고 있는 과정 중을 의미한다.)

2. 메인 for문

  • 입력된 문자열 'n_str'의 각 문자를 순차적으로 탐색한다.
  • 'i'는 0부터 'n_str.size()'까지 증가한다.

3. 문자 처리

  • 현재 문자가 '0'이고 '0' 찾는 과정 중인지 확인한다. ( n_str[i] == '0' && a == true )
    • 아무 동작도 수행하지 않고 다음으로 넘어간다.
  • 'else'는 현재 문자가 '0'이 아니거나, 이미 '0'이 아닌 문자를 만났을때에 해당한다.
    • 'a''false'로 하여 '0'을 찾는 과정이 끝났음을 표시한다.
    • 현재 문자를 'answer'에 추가한다.

4. 결과

  • 'answer'을 반환한다.

반응형