[C++] BOJ 10829번 : 이진수 변환

4265 단어 baekjoonbaekjoon

📝 문제


💻 실행 코드

// BOJ 10829번 : 이진수 변환
#include <iostream>
#include <stack>
using namespace std;

int main() {
    long long n;
    cin >> n;

    stack <int> s; // 스택 선언
    while(true){ // 무한 반복
        if(n == 0) // n이 0이 되었을 때 종료
            break;
        s.push(n % 2); // 2로 나눈 나머지를 스택에 저장
        n /= 2;
    }

    while(true){ // 스택 출력
        if(s.empty()) // 스택이 비었다면 종료
            break;
        else{
            cout << s.top(); // top 출력
            s.pop(); // pop
        }
    }
}

📚 문제 풀이

stack 사용

  • #include <stack> 헤더 사용
  • stack <int> s 선언
  • 스택에 n을 2로 나눈 나머지를 넣고 2로 나눠줌
  • n이 0이 되었을 때 스택 출력

✅ 실행 결과

좋은 웹페이지 즐겨찾기