이번 문제는 아래 링크에서 풀어볼 수 있습니다.
1373번: 2진수 8진수
첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다.
www.acmicpc.net
문제
2진수가 주어졌을 때, 8진수로 변환하는 프로그램을 작성하시오.
입력
첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다.
출력
첫째 줄에 주어진 수를 8진수로 변환하여 출력한다.
예제 입력 1
11001100
예제 출력 1
314
정답 코드
답안1
답안2
문제 풀이
parseInt(input, 2).toString(8);
일반적으로 주어진 2진수를 8진수로 바꿀 때는 위와 같이 2진수를 우선 10진수로 변환한 다음 8진수로 변환한다. 하지만 문제에서는 주어지는 입력값의 범위가 너무 크기 때문에 다른 방법을 써서 풀어야 한다. 2진수의 뒤에서부터 3자리씩 끊어 각 자리 수에 4, 2, 1을 각각 곱하면 8진수가 된다는 성질을 이용해서 풀면 된다.
첫 번째 답안은 이 같은 성질을 이용해 뒤에서부터 3자리씩 끊어 2진수를 8진수로 변환하여 result 변수에 담은 것이다. 두 번째 답안에서는 마찬가지로 뒤에서부터 3자리씩 끊어 각 자리 수에 각각 4, 2, 1을 곱해 8진수를 구했다.
함께 보기
https://leylaoriduck.tistory.com/509
[백준 1373번 2진수 8진수 - node.js] [알고리즘 기초 1/2]
https://www.acmicpc.net/problem/1373 1373번: 2진수 8진수 첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다. www.acmicpc.net 문제 2진수가 주어졌을 때, 8진수로 변환하는 프로그램을
leylaoriduck.tistory.com
https://velog.io/@rkio/%EB%B0%B1%EC%A4%80-Javascript-1373
[백준 | Javascript] 1373
알고리즘 기초 1/2. 301 - 수학 1(연습)1373번. 2진수 8진수1373번 문제 링크이번 문제는 2진수 -> 8진수로 전환하는 방법을 알면 쉽게 만들 수 있다.방법은 아래와 같다.필자는 계산의 편의를 위해 3개
velog.io
2진수를 8진수로 변환 – 언제나 휴일
n진수 n개의 숫자로 표현하는 수전산에서 알아두어야 할 진수에는 2진수, 8진수, 10진수, 16진수가 있습니다. n진수의 a번째 자리의 자리값은 n의 a승입니다.따라서 8진수 1010 은 (8의 3승) + 0 + (8의 1
ehpub.co.kr
https://johnleeedu.tistory.com/22
2의 0승이 1인 이유
자 오늘은 2의 0승이 1이 되는 이유를 간단히 보여 드리겠습니다. 우선 아래에서 보는 것과 같이 2의 3승 나누기 2의 2승은 2의 (3-2)승, 즉 2의 1승입니다. 이번엔 4 나누기 4를 한 번 해보겠습니다.
johnleeedu.tistory.com
'👩💻 Programming > Coding Test 문제 풀이' 카테고리의 다른 글
[Baekjoon] 2089 -2진수(자바스크립트/NodeJs) (0) | 2023.01.09 |
---|---|
[Baekjoon] 1212 8진수 2진수(자바스크립트/NodeJs) (1) | 2023.01.09 |
[Baekjoon] 17087 숨바꼭질 6(자바스크립트/NodeJs) (0) | 2023.01.06 |
[Baekjoon] 2004 조합 0의 개수(자바스크립트/NodeJs) (0) | 2023.01.03 |
[Baekjoon] 1676 팩토리얼 0의 개수(파이썬/자바스크립트/NodeJs) (0) | 2023.01.02 |
댓글