본문 바로가기

전체 글178

[프로그래머스/카카오 블라인드] 실패율 https://school.programmers.co.kr/learn/courses/30/lessons/42889 실패율 계산 = 현재 스테이지에 남은 사람 수 / 현재 스테이지까지 올라온 전체사람수 array를 이용한 내림차순 정렬 function solution(N, stages) { var answer = []; let fails = []; // 실패율 계산 for (let stage = 1; stage s === stage).length; // 현재 stage에 남아 있는 사람의 수 const all = stages.filter(s => s >= stage).length; // fails.push([stage, curr/all]); } // 내림차순 정렬 fails.sort((a, b) => b[.. 2023. 6. 6.
[프로그래머스/카카오 블라인드] 비밀지도 https://school.programmers.co.kr/learn/courses/30/lessons/17681 0,0 일때 빼고 다 1이다 => OR | 를 이용해서 두 십진법의 OR bit연산을 구한다 이진법으로 변환 toString(2) regex /0|1/g 0|1: 0 or 1 g 전체를 찾음 replace(변경할 문자 찾는 규칙, 찾은 문자를 변경하는 규칙) +string : number 타입으로 변환 function solution(n, arr1, arr2) { return arr1.map((v, i) => addZero(n, (v | arr2[i]).toString(2)).replace(/1|0/g, a => +a ? '#' : ' ')); } const addZero = (n, s) =.. 2023. 6. 6.
[프로그래머스] 진수 변환하기 - toString(n), parseInt(n진수, n) https://school.programmers.co.kr/learn/courses/30/lessons/68935 첫번쨰 방법 전통적 수학 진법 구하는 방식으로 3씩 나눠서 나머지를 remains에다 넣어주고, 마지막 남은 몫까지 넣어준 뒤, 각 자리수 * 3의 n제곱의 합을 리턴했다. 3**i = Math.pow(3, i) function solution(n) { let remains = []; while(n >= 3) { remains.unshift(n % 3); n = Math.floor(n / 3); } remains.unshift(n); return remains.reduce((acc, curr, i) => { acc += curr * 3**i; // Math.pow(3, i) = 3**i re.. 2023. 6. 6.
[프로그래머스] 소수찾기 - Math.sqrt(n), Set.size() https://school.programmers.co.kr/learn/courses/30/lessons/12921 n까지의 숫자들 중 소수갯수 찾기 첫번째 방법 나름 머리 쓴다고 소수를 찾으면 그 수의 배수를 제거해줬다. function solution(n) { var answer = 0; const isPrime = new Array(n).fill(true); for(let i = 2; i 2023. 6. 6.
CORS 배경 토이프로젝트로 프론트서버 :3000에서 start라는 버튼을 누르면 백엔드서버 :3001로 요청을 보내는 부분을 만들고 있는데 CORS 에러가 떴다. 이 참에 정리해본다 CORS ( Cross-Origin Resource Sharing) 란 다른 출처가 리소스를 요청할 때 발생하는 에러이다. 해결법을 통해 한 출처에서 실행중인 웹 애플리케이션이 다른 출처의 자원에 접근할 수 있게 브라우저에게 알려준다. CORS 발생하는 이유, 목적? 1. 브라우저는 요청헤더에 자신의 출처 origin 를 담아 요청을 보낸다. 2. 서버가 이 요청에 응답을 할때 응답 헤더에 Access-Control-Allow-Origin에 이 리소스에 접근 가능한 출처를 보낸다 3. 클라이언트에서 자신의 origin과 서버가 보낸.. 2023. 6. 4.
[프로그래머스] 문자열 내림차순으로 배치하기 https://school.programmers.co.kr/learn/courses/30/lessons/12917 const a = 배열.sort((a, b) => a a b.charCodeAt() - a.charCodeAt()); return sorted.join(''); } 문자를 아스키코드로 변환 charCodeAt() 2023. 6. 2.