[백준/node.js] 2745, 11005 진법 변환

ssamu·2023년 11월 2일
0

2745 문제:

첫째 줄에 N과 B가 주어진다. (2 ≤ B ≤ 36)

B진법 수 N을 10진법으로 바꾸면, 항상 10억보다 작거나 같다.

첫째 줄에 B진법 수 N을 10진법으로 출력한다.

예제 입력 1:

ZZZZZ 36

예제 출력1:

60466175


코드:

const [num, form] = require('fs').readFileSync(0).toString().trim().split(" ");

let ans = parseInt(num, form);

console.log(ans);


parseInt는 변환하고자 하는 숫자(혹은 문자)와 그 값을 표현하고 있는 진법을 입력해주면 10진수로 변환된다!!


11005 문제:

첫째 줄에 N과 B가 주어진다. (2 ≤ B ≤ 36) N은 10억보다 작거나 같은 자연수이다.

첫째 줄에 10진법 수 N을 B진법으로 출력한다.

예제 입력 1:

60466175 36

예제 출력1:

ZZZZZ


코드:

let [num, form] = require('fs').readFileSync(0).toString().trim().split(" ").map((item) => Number(item));

let ans = num.toString(form).toUpperCase();

console.log(ans);


toString을 활용한 풀이.
toString에는 진법을 넣고 해당 진법으로 num의 숫자를 바꿔준다.
이 때, 숫자 표현 범위를 넘어서는 것은 소문자로 변환되므로 toUpperCase를 통해 대문자로 변환해줘야 답과 일치하게 만들 수 있다.

0개의 댓글