개수 알고리즘 // 문제: 1부터 1,000까지의 정수 중 13의 배수의 개수(건수,횟수) //개수 알고리즘 (Count Algorithm): 주어진 범위에 주어진 조건에 해당하는 자료들의 개수 // [1] Input: 1부터 1,000까지의 데이터 var count = 0; //개수를 저장할 변수는 0으로 초기화 // [2] Process //개수 알고리즘 영역: 주어진 범위에 주어진 조건 (필터링) for (i = 1; i 🍀 코딩 테스트/쉽게 배우는 JavaScript 알고리즘 입문 2022.07.19
LV1 - 수박수박수박수박수박수? 풀이 function solution(n) { let answer = ""; for (i = 0; i < n; i++) { if (i % 2 === 0) { answer = answer + "수"; } else { answer = answer + "박"; } } return answer; } 너무 어렵게 생각했던 듯 하다. answer= answer + "글자" 로 해주면 되는것을 너무 어렵게 생각했던 듯하다. 🍀 코딩 테스트/프로그래머스 2022.07.19
LV1 - 핸드폰 번호 가리기 1차풀이 function solution(phone_number) { const num= phone_number.substr(phone_number.length-4 ,4) let secret = "*".repeat(phone_number.length-4) return secret + num } 🍀 코딩 테스트/프로그래머스 2022.07.18
LV1 - 소수찾기 1차 풀이 => 실패 function solution(n) { let arr = Array.from({ length: n - 1 }, (v, i) => i + 2); let count = 2; for (i = 0; i < arr.length; i++) { if (arr[i] % 2 !== 0 && arr[i] % 3 !== 0) { count++; } } if (n === 2) { count = 1; return count } if (n === 3) { count = 2; return count } return count } 처음에는 2와 3으로 나누어떨어지는 경우에는 소수가 아니다라는 것으로 판단을 하려 했는데 반례들이 많아서 실패했다. 🍀 코딩 테스트/프로그래머스 2022.07.18
4주차 문제 (영어 끝말잇기) 문제 설명 1부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고 있습니다. 영어 끝말잇기는 다음과 같은 규칙으로 진행됩니다. 1번부터 번호 순서대로 한 사람씩 차례대로 단어를 말합니다. 마지막 사람이 단어를 말한 다음에는 다시 1번부터 시작합니다. 앞사람이 말한 단어의 마지막 문자로 시작하는 단어를 말해야 합니다. 이전에 등장했던 단어는 사용할 수 없습니다. 한 글자인 단어는 인정되지 않습니다. 다음은 3명이 끝말잇기를 하는 상황을 나타냅니다. tank → kick → know → wheel → land → dream → mother → robot → tank 위 끝말잇기는 다음과 같이 진행됩니다. 1번 사람이 자신의 첫 번째 차례에 tank를 말합니다. 2번 사람이 자신의 첫 번째 차례에 .. 🍀 코딩 테스트/알감자 스터디 (알고리즘 감 잃지말자) 2022.07.18
LV1 - 서울에서 김서방 찾기 풀이 function solution(seoul) { answer = `김서방은 ${seoul.indexOf("Kim")}에 있다`; return answer; } 그냥 가볍게 풀기 좋았다. indexOf() 메서드가 배열에서 찾으려는 항목의 index를 반환해준다는 것 만 기억하자 🍀 코딩 테스트/프로그래머스 2022.07.16
LV1 - 문자열 다루기 기본 1차풀이 => 실패 function solution(s) { if (s.length === 4 || 6) { if (isNaN(s) === false) { return true; } return false; } return false; } 2차풀이 => 실패 function solution(s) { if (s.length === 4 || 6) { if (isNaN(s) === false) { return true } else { return false } } else { return false } } => 지금 생각해보니 s.length === 4 || s.length ===6 이라고 썼어야 하는데... 바보 같다. 3차풀이 => 실패 function solution(s) { if (s.length ==.. 🍀 코딩 테스트/프로그래머스 2022.07.16
LV1 - 문자열 내림차순으로 배치하기 풀이 function solution(s) { const answer = s.split("").sort().reverse().join(""); return answer; } 내림차순으로 바꿔주도록 reverse()를 썼다. 🍀 코딩 테스트/프로그래머스 2022.07.15
LV1 - 문자열 내 p와 y의 개수 풀이 function solution(s){ let count = 0; var convertedString = s.toLowerCase(); for (i = 0; i < convertedString.length; i++) { if (convertedString[i] === "p") { ++count; } else if (convertedString[i] === "y") { --count; } } if (count === 0) { return true; } else { return false; } } 처음에 p,P,y,Y를 모두 다 다르게 판단을 해주어야하나 생각했었다. 이럴 때 하나로 통일을 해주는게 편하겠다고 생각해서 모두 소문자로 바꾸어준 후 판단을 하니까 편했다. 그리고 예전에 '올바른 괄호' 문제.. 🍀 코딩 테스트/프로그래머스 2022.07.15
등차수열 알고리즘 // 문제: 1부터 20까지의 정수 중 홀수의 합을 구하는 프로그램 // 등차수열: 연속하는 두 수의 차이가 일정한 수열 var sum = 0; for (i = 1; i 🍀 코딩 테스트/쉽게 배우는 JavaScript 알고리즘 입문 2022.07.14