본문 바로가기
  • 개발 / 공부 / 일상

Programmers61

(Programmers) [Lv. 2] 다음 큰 숫자 문제 설명 자연수 n이 매개변수로 주어진다 n의 다음 큰 숫자는 다음과 같이 정의 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 개수가 같다 조건 3. n의 다음 큰 숫자는 조건 1,2 를 만족하는 수중 가장 작은 수 자연수 n의 다음 큰 숫자를 반환하는 solution 함수를 완성하시오 제한사항 n은 1,000,000 이하의 자연수 입출력 예시 전체 코드 function solution(n) { let originalLength = n .toString(2) .split("") .filter((item) => item == 1).length; while (1) { let tempNum = ++n; let tempLength = temp.. 2023. 2. 10.
(Programmers) [Lv. 1] 같은 숫자는 싫어 문제 설명 배열 arr를 넘겨받는다 arr은 0 ~ 9까지의 숫자로만 이루어져 있다 연속된 숫자는 하나만 남고 나머지는 제거하려고 한다 제거된 후에는 본 배열의 원소들 순서를 유지해야 한다 예를 들면 arr = [1,1,3,3,0,1,1,] 이면 [1,3,0,1]을 반환 arr = [4,4,4,3,3] 이면 [4,3]을 반환 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나 같고 9보다 작거나 같은 정수 입출력 예시 전체 코드 function solution(arr) { return arr.filter((item, index) => item !== arr[index + 1]); } 2023. 2. 10.
(Programmers) [Lv. 1] 최대공약수와 최소공배수 문제 설명 두 개의 정수 n, m을 매개변수로 넘겨받는다 n과 m의 최대공약수와 최소공배수를 담는 배열을 만들어 보시오 반환하는 배열의 첫 번째는 최대공약수, 두 번째는 최소공배수를 담아 반환하는 solution 함수를 완성하시오 제한사항 두 수는 1 이상 1000000 이하의 자연수 입출력 예시 전체 코드 function solution(n, m) { let tempArr = []; let answer = []; for (let i = 1; i < Math.max(n, m); i++) { if (!(n % i) && !(m % i)) tempArr.push(i); } answer.push(tempArr[tempArr.length - 1]); if (!(Math.max(n, m) % Math.min(n,.. 2023. 2. 10.
(Programmers) [Lv. 1] 직사각형 별찍기 문제 설명 정수 n, m 두 개의 매개변수가 주어진다 문자열 *을 이용하여 가로길이는 n, 세로 길이는 m으로 이루어진 직사각형형태를 출력해 보세요 제한사항 n, m은 각각 1000 이하인 자연수 입출력 예시 전체 코드 process.stdin.setEncoding("utf8"); process.stdin.on("data", (data) => { const n = data.split(" "); const a = Number(n[0]), b = Number(n[1]); for (let i = 0; i < b; i++) { let tempStr = ""; for (let j = 0; j < a; j++) { tempStr += "*"; } console.log(tempStr); } }); 2023. 2. 10.