문제https://school.programmers.co.kr/learn/courses/30/lessons/82612 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이1부터 시작해서 count만큼 금액을 누적한 후 계산해준다.function solution(price, money, count) { let total = 0; for (i = 1; i money ? total - money : 0;}
전체 글
console.log("빔네모")문제https://school.programmers.co.kr/learn/courses/30/lessons/12917 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이대문자는 소문자보다 작은것으로 간주하고, 알파벳순서로 앞 글자가 뒤로 가야하니 sort()를 해준 다음 뒤집어줬다.마지막은 join으로 합쳐서 문자열로 만들어주기function solution(s) { return [...s].sort().reverse().join("")}
문제https://school.programmers.co.kr/learn/courses/30/lessons/77884 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이약수를 구하는 함수를 만든 후 솔루션 함수 안에서 홀짝 판별해준다.function countDivisors(n) { let count = 0; for (let i = 1; i 다른 풀이제곱근이 정수면 약수가 홀수다.ex )12 => 1,2,3,4,6,12 , 루트12는 3.4xx로 정수가 아니다. 약수의 개수또한 짝수16 => 1,2,4,8,16, 루트 16은 4로 정수. 약수의 개수 홀..
문제https://school.programmers.co.kr/learn/courses/30/lessons/70128 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이배열을 순회하면서 더해준다.function solution(a, b) { //내적 구하기 let answer = 0; for (let i = 0; i
문제https://school.programmers.co.kr/learn/courses/30/lessons/12922 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이수, 수박, 수박수, 수박수박, 이런식으로 수박을 n에 따라 표현한다.짝수일때는 수박을 n/2번 반복해주면 되지만 n이 홀수일때는 뒤에 "수"를 덧붙여줘야 하므로 조건문으로 처리해 준다.function solution(n) { let result = "수박".repeat(Math.floor(n / 2)); if (n % 2) { result += "수"; } return result;}
문제https://school.programmers.co.kr/learn/courses/30/lessons/181832 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이우선, 0으로 채운 n x n 크기의 배열을 만들어 준다. // 결과를 저장할 이차원 배열을 n x n 크기로 만들기 const result = Array.from({ length: n }, () => Array(n).fill(0)); 나선형으로 변수를 채우기 위해 필요한 방향 변수를 정의 해놓는다. let num = 1; let row = 0, col = 0; let dr = 0, ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/120866 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이배열을 돌면서, 1이 나오면 그 주변을 x로 변경한다. 단 1이 적혀있는 경우에는 1을 유지한다.배열을 다 순환한 다음에 0의 갯수를 세어 반환한다.function solution(board) { board.forEach((line, i) => { line.forEach((cell, j) => { if (cell === 1) { // 왼쪽 if (j ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/181916?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이주사위값을 key, 해당 주사위 값의 갯수를 value로 객체를 만든다. function solution(a, b, c, d) { //{주사위값 : 갯수}로 정리 const diceValue = [a, b, c, d].reduce((acc, cur) => { acc[cur] = acc[cur] ? acc[cur] + 1 : 1; return ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/120808 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이공통 분모를 맞춰준 후 최대공약수로 나누어준다.function solution(numer1, denom1, numer2, denom2) { //분자와 분모를 공통 분모로 만들어주기 const denom = denom1 * denom2; const numer = numer1 * denom2 + numer2 * denom1 //분자와 분모를 최대공약수로 나눠주기 const gcd = (a..
문제https://school.programmers.co.kr/learn/courses/30/lessons/120923 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이알고리즘을 빠르게 풀려면.....수학적 사고가 필요하다. 연속된 수의 총합을 알기때매 첫째항을 구하기 위해 등차수열의 합 공식을 이용한다.공차는 연속된 숫자이므로 => +1 총합은 total , n은 몇번째 항 => num 이 된다. 위의 공식에 맞게 식을 정리해보면 total = {2a + (num-1) }* num/2 가 된다. 여기서 a만 남기고 식을 정리하면 다음과 같다. 첫째항을 구..