프로그래머스, 자바스크립트) 왼쪽 오른쪽
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 반복문을 돌면서 l을 만날경우 l앞까지 잘라내고 r을 만날 경우 r이후부터 잘라낸다. 반복문을 돌아도 조건문에 걸리지 않는 경우에는 빈배열을 리턴한다. function solution(str_list) { for (let i = 0; i < str_list.length; i++) { if (str_list[i] === "l") { return str_list.slice(0, i); }..
프로그래머스, 자바스크립트) 특수문자 출력하기
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181948 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 //!@#$%^&*(\'"?:; 출력하기 console.log("!@#$%^&*(\\'\"?:;") //작은따옴표와 역슬래시 문자는 이스케이프(escape) 시퀀스로 처리해야 합니다. //즉, 작은따옴표는 \'로, 역슬래시는 \\로 표기해야 합니다. 그렇지 않으면 문법 오류가 발생합니다. 역슬래시는 \\로 표기해야 된다는 것만 알면 된다 const readline = require("..
프로그래머스, 자바스크립트) 두 수의 합
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181846 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 자바스크립트에서 숫자로 형변환을 거칠때 64비트 부호 없는 정수는 0부터 2^64 - 1까지의 범위만을 표현할 수 있다. 때문에 이 값을 넘어가면 오버플로우가 발생해 정확하게 변환되지 않는다. const num1 = Number("18446744073709551615"); const num2 = Number("287346502836570928366"); console.log(num1)..
프로그래머스, 자바스크립트) qr code
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181903 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 코드를 배열로 풀어낸 다음, 필터를 이용해 조건에 맞는 애들만 걸러낸다. 그후 join으로 합치기 function solution(q, r, code) { return [...code].filter((x, i) => i % q === r).join(""); }
프로그래머스, 자바스크립트) 영어가 싫어요
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120894 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문자배열을 돌면서 numbers에 해당하는 문자가 나오면 치환한다. function solution(numbers) { const strNum = [ "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", ]; strNum.forEach((num, idx) => { numbers = numbers...
프로그래머스, 자바스크립트) 공 던지기
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120843# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1번부터 던지며 한명씩 건너뛰므로 1,3,5,7 ... 이런식으로 가게 된다 배열이 [1,2,3] 이고 배열을 길게 늘린다고 가정하면 [1,2,3,1,2,3,1,2,3 ...] 여기서 k번 순서로 던지는 사람은 2k-1번째 사람이 된다. 5번째로 던지는 사람을 구한다고 가정하면 2*5-1 이므로 9. 1-2-3-1-2-3-1-2-3 순서대로 돼서 3번이 5번째 사람이 된다. 결국 배..
프로그래머스, 자바스크립트) 커피 심부름
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181837 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 아메리카노가 글자에 포함되면 4500원, 카페라떼가 포함되면 5000, anything은 아메리카노로 4500원을 추가해준다. function solution(order) { let answer = 0; order.forEach((x) => { if (x.includes("americano")) { answer += 4500; } else if (x.includes("cafelatte..
프로그래머스, 자바스크립트) 리스트 자르기
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181897 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 스위치문을 사용해 각 케이스에 맞게 코드를 작성한다 function solution(n, slicer, num_list) { const [a, b, c] = slicer; switch (n) { case 1: return num_list.slice(0, b + 1); case 2: return num_list.slice(a); case 3: return num_list.slice(a,..
프로그래머스, 자바스크립트) 배열의 길이를 2의 거듭제곱으로 만들기
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181857 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 log2를 취해서 정수인지 판별해서 맞다면 그대로 리턴 아닐 경우, log2를 취한 후 올림해 가장 가까운 자연수를 뽑아 제곱수를 구한다. 2.xx => Math.pow(2,3) => 8. 구한 숫자와 원래 배열의 길이의 차가 필요한 0의 개수가 된다. function solution(arr) { //요소의 수 const total = arr.length; //2의제곱인지 판별해서 맞..
프로그래머스, 자바스크립트) 7의 개수
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120912 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 배열을 합쳐 문자열로 만든 후 7을 기준으로 쪼개 준다. 배열의 길이 -1 이 7의 개수가 된다. function solution(array) { return array.join("").split("7").length - 1; }