목록코딩테스트.js/자바스크립트 알고리즘 문제풀이 입문 (인프런) (11)
천진난만 코딩 스토리

- 코드 - function solution(str) { let answer = 0; for (let x of str) { if (x === x.toUpperCase()) answer++; //다른 방법으로도 풀 수 있음 //let num = x.charCodeAt(); //if (num >= 65 && num = 65 && num

- 코드 - function solution(a, b) { let answer = 0; for (let x of a) { if (x === b) answer++; return answer; } str = "COMPUTERPROGRAMMING"; console.log(solution(str, 'R')); - 풀이과정 - str = "COMPUTERPROGRAMMING"; console.log(solution(str, 'R')); 를 하여 문자와 단어를 받고 문자를 배열함. function solution(a, b) { 를 하여 solution(a, b) 라는 함수를 만듬. 이때 a는 str이고 b는 'R'임. let answer = 0; 를 하여 answer에 0을 저장함. for (let x of a) ..

- 코드 - function solution(s) { let answer = ""; for (let x of s) { if (x === "A") answer += "#"; else answer += x; } return answer; } str = "BANANA"; console.log(solution(str)); - 풀이과정 - str = "BANANA"; console.log(solution(str)); 를 하여 단어를 입력 받음 function solution(s) 를 하여 solution(s)라는 function을 만듬. 이때 s는 str임. let answer = ""; 를 하여 answer를 string으로 저장하지만 내용은 비워둠. for (let x of s) 를 하여 s를 계속 반복하여 ..

-코드- function solution(arr) { let answer = arr; let sum = answer.reduce((a, b) => a + b, 0); for (let i = 0; i < answer.length - 1; i++) { for (let j = i + 1; j < answer.length; j++) { if (sum - (answer[i] + answer[j]) == 100) { answer.splice(j, 1); answer.splice(isFinite, 1); } } } return answer; } let arr = [20, 7, 23, 19, 10, 15, 25, 8, 13]; console.log(solution(arr)); -풀이과정- let arr = [20, 7..

-코드- function solution(day, arr) { let answer = 0; for (let x of arr) { if (x % 10 == day) answer++; } return answer; } arr = [25, 23, 11, 47, 53, 17, 33]; console.log(solution(3, arr)); -풀이과정- console.log(solution(3, arr)); 를 하여 날짜인 자연수 하나와 차량번호를 배열로 받음. arr = [25, 23, 11, 47, 53, 17, 33]; 를 하여 차량번호를 배열함. function solution(day, arr) 를 하여 날짜와 차량번호 배열을 받고 let answer = 0; 를 하여 answer에 0을 넣어줌. for ..

-코드 1- function solution(arr) { let answer = []; let sum = 0, min = 1000; for (let i = 0; i < arr.length; i++) { if (arr[i] % 2 === 1) { sum += arr[i]; if (arr[i] < min) min = arr[i]; } } answer.push(sum); answer.push(min); return answer; } let arr = [12, 77, 38, 41, 53, 92, 85]; console.log(solution(arr)); -풀이과정 1- let arr = [ ]; 를 하여 입력되는 수를 배열함. function solution(arr) 를 하여 배열을 불러오고 let answer..

-코드 1- function solution(arr) { let answer, min = Number.MAX_SAFE_INTEGER; for (let i = 1; i < arr.length; i++) { if (arr[i] < min) min = arr[i]; } answer = min; return answer; } let arr = [5, 3, 7, 11, 2, 15, 17]; console.log(solution(arr)); -풀이과정- let arr = [5, 3, 7, 11, 2, 15, 17]; 를 하여 입력되는 수를 배열함. function solution(arr) 를 하여 배열을 불러오고 let answer, min = Number.MAX_SAFE_INTEGER; 를 하여 answer를 만..

-코드- function solution(n) { let answer = 0; for (let i = 1; i

-코드- function solution(n) { let answer = Math.ceil(n / 12); return answer; } console.log(solution(25)); -풀이과정- function solution(n) { 를 하여 자연수 하나를 받고 let answer = Math.ceil(n / 12); 를 하여 Math 함수인 ceil를 사용함. n은 학생 수 이고 한 다스에 12자루이기 때문에 n/12를 하여 몇 다스가 필요한지 계산하고 소숫점이 생겨도 한 다스가 더 필요하기 때문에 ceil을 하여 정수올림을 함. ceil은 소숫값이 생기면 정수 올림을 하여 소숫값을 없애버림. ex) 2.34 -> 3 / 5.78 -> 6 floor은 정수 내림. ex) 2.34 -> 2 / 5..

-코드- function solution(a, b, c) { let answer = "Yes"; let sum = a + b + c; if (a > b) max = a; else max = b; if (c > max) max = c; if (sum - max b) max = a; 를 하여 만약 a가 b보다 크다면 max라는 변수에 a를 넣게 함. else max = b; 를 하여 반대로 a가 b보다 크지 않다면 max에 b를 넣게 함. if (c > max) max = c; 를 하여 만약 c가 저장된 max보다 크다면 max에 c를 넣게 함. 이제 max를 구했으니 "No"의 경우를 출력하는 코드를 작성해야 함. if (sum - max