Published 2020. 12. 29. 01:42
 

1373번: 2진수 8진수

첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다.

www.acmicpc.net

#include <iostream>
#include <string>
using namespace std;

auto main()->int {
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr); cout.tie(nullptr);

	string in;
	cin >> in;
	int n = in.size();
	if (n % 3 == 1) {
		cout << in[0] - '0';
	}
	else if (n % 3 == 2) {
		cout << (in[0] - '0') * 2 + (in[1] - '0');
	}
	for (int i = n % 3; i < n; i += 3) {
		cout << (in[i] - '0') * 4 + (in[i + 1] - '0') * 2 + (in[i + 2] - '0');
	}

	cout << '\n';
}

'Problem set' 카테고리의 다른 글

[백준] 1463: 1로 만들기  (0) 2020.12.29
[백준] 1406: 에디터  (0) 2020.12.29
[백준] 1212: 8진수 2진수  (0) 2020.12.29
[백준] 1158: 요세푸스 문제  (0) 2020.12.29
[백준] 1110: 더하기 사이클  (0) 2020.12.29
복사했습니다!