🍀 코딩 테스트 40

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으로 나누어떨어지는 경우에는 소수가 아니다라는 것으로 판단을 하려 했는데 반례들이 많아서 실패했다.

4주차 문제 (영어 끝말잇기)

문제 설명 1부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고 있습니다. 영어 끝말잇기는 다음과 같은 규칙으로 진행됩니다. 1번부터 번호 순서대로 한 사람씩 차례대로 단어를 말합니다. 마지막 사람이 단어를 말한 다음에는 다시 1번부터 시작합니다. 앞사람이 말한 단어의 마지막 문자로 시작하는 단어를 말해야 합니다. 이전에 등장했던 단어는 사용할 수 없습니다. 한 글자인 단어는 인정되지 않습니다. 다음은 3명이 끝말잇기를 하는 상황을 나타냅니다. tank → kick → know → wheel → land → dream → mother → robot → tank 위 끝말잇기는 다음과 같이 진행됩니다. 1번 사람이 자신의 첫 번째 차례에 tank를 말합니다. 2번 사람이 자신의 첫 번째 차례에 ..

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 ==..

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를 모두 다 다르게 판단을 해주어야하나 생각했었다. 이럴 때 하나로 통일을 해주는게 편하겠다고 생각해서 모두 소문자로 바꾸어준 후 판단을 하니까 편했다. 그리고 예전에 '올바른 괄호' 문제..

LV1 - 문자열 내 마음대로 정렬하기

풀이 function solution(strings, n) { var answer = strings.sort((a, b) => a[n] === b[n] ? a.localeCompare(b) : a[n].localeCompare(b[n]) ); return answer; } sort() , localeCompare() 관련 참고 블로그 https://daniel-park.tistory.com/14 [Javascript] sort() 함수의 함정 Array.sort() 프로그래머스 알고리즘을 풀던 중 한 가지 사실을 알게 되었다. const array1 = [1, 30, 4, 21, 100000]; array1.sort(); console.log(array1); 다음 코드의 결과는 [1, 4, 21, 30,..

1 2 3 4