본문 바로가기

개발58

[js] 프로그래머스 - 이진 변환 반복하기 프로그래머스 lv2 이진 변환 반복하기 0과 1로 이루어진 문자열에 대해 다음과 같은 변환 과정을 거친다.x의 모든 0을 제거한다.x를 "x의 길이를 2진법으로 표현한 문자열"로 바꾼다.예시) x='110010101001' 1) 0을 제거 > x='111111' 2) x의 길이를 2진수로 표현 > x의 길이가 6이므로 2진수로 바꾸면 '110' > x='110' 위의 과정을 x가 1이 될 때까지 반복한다. 2진 변환 과정을 거친 횟수와 제거한 0의 개수를 배열로 출력한다.입출력▽sresult'110010101001'[3, 8] 1) 우선 s의 1과 0을 구분하여 1은 저장하고, 0은 개수를 센다. var answer = [0, 0];let one = '';for (let i = 0; i s의 1을 .. 2022. 9. 8.
[js] 프로그래머스 - 로또의 최고 순위와 최저 순위 프로그래머스 lv1 로또 예상 순위 출력하기 순위당첨 내용16개 번호 일치25개 번호 일치34개 번호 일치43개 번호 일치52개 번호 일치6(낙첨)그 외 로또에 낙서를 하여 알아볼 수 없는 번호는 0으로 표기하고 보이는 번호로 추측하여 당첨 가능한 최고 순위와 최저 순위를 출력하는 문제이다. 예시)당첨 번호 : 1, 6, 10, 19, 31, 45구입한 로또 번호 : 0, 0, 1, 25, 31, 44이때 알 수 없는 번호를 제외한 4개의 숫자 중에서 1과 31이 일치한 상황이므로 알 수 없는 번호가 모두 불일치할 경우 최소 [2개 번호 일치 > 5등] 알 수 없는 번호가 모두 일치할 경우 최대 [4개 번호 일치 > 3등]으로 추측할 수 있다.따라서 출력값은 [3, 5]이다.입출력 ▽lottoswin_n.. 2022. 9. 8.
[javascript] Dom이란? - 2 (Dom 트리) DOM 트리DOM의 기본 개념을 기반으로 문서의 계층 구조를 그림으로 나타낸 것을 DOM 트리라 한다. DOM(Document Object Model) 문서 객체 모델 위의 코드 계층 구조를 그림으로 나타내면 아래와 같다. 이때 그림에 나타낸 박스 하나하나를 노드라 부르고위아래 계층 구조에 부모 자식 관계, 좌우 계층 구조에 형제 관계가 맺어진다. + Node type)각 노드의 성격에 따라 노드를 분류한 것을 노드 타입이라고 하는데 총 12가지가 있다.주로 사용하는 것은 4가지이다.요소 노드 : html 태그에서 만들어지며 dom 트리를 구성하는 블록이 되는 노드텍스트 노드 : 오로지 텍스트로만 이루어진 노드 문서 노드 : dom의 진입점이 되는 document 노드주석.. 2022. 9. 5.
[javascript] DOM이란? - 1 (문서 객체 모델) DOMdocument object model의 약자로 HTML이나 XML 문서에 접근하기 위한 일종의 인터페이스이다.문서의 요소를 정의하고 요소에 접근하는 방법을 제공한다. DOM은 nodes와 objects로 문서를 표현하며, 이들은 웹 페이지를 스크립트 또는 프로그래밍 언어들에서 사용될 수 있게 연결시켜주는 역할을 담당한다. DOM은 웹 페이지의 객체 지향 표현이며, 자바스크립트와 같은 스크립팅 언어를 이용해 DOM을 수정할 수 있다. DOM_mdn web docs DOM의 활용//id로 태그 선택하기document.getElementById('id이름');//class로 태그 선택하기document.getElementsByClassName('class이름');//태그 이름으로 태그 선택하기docum.. 2022. 9. 5.
[js] 프로그래머스 - 소수 찾기 프로그래머스 lv.1 소수 찾기 1) n이 1과 2일 때의 경우를 따로 빼주었다. 1과 2인 경우를 제외하면 규칙적인 코드 작성이 더 간편해지기 때문이다.if (n == 1) return 0;if (n == 2) return 1; //n=2일 때는 자기 자신이 소수이므로 2) n이 3 이상일 때의 경우 3부터 n까지 for문을 걸어 카운트업 해준다. (소수 합성수 구분 없이 우선 세어 줌)이때 각 i에 대하여 2부터 i의 제곱근까지의 수로 i를 나누어보고 나누어떨어진다면 소수가 아니므로 카운트다운 해준다.이때 i의 제곱근 대신 i / 2로 해도 가능은 하나 시간 초과가 뜬다. (더불어 효율성 테스트도 모두 실패)for (i = 3; i 처음엔 break를 잘 사용할 줄 몰라 애먹었었는데, 이번에 다시.. 2022. 8. 31.