checkio(6)
-
JavaScript 코딩 연습 / The Most Wanted Letter
문제 / 웹사이트 알파벳 현상수배 (The Most Wanted Letter) / CheckiO 난이도 Simple / 초급 내용 알파벳으로 이루어진 문장에서, 대소문자 구분 없이 가장 많은 빈도로 나타난 알파벳을 추출하는 함수를 작성하세요. ※ 가장 많은 빈도로 나타나는 알파벳이 여럿일 경우, 알파벳 순서로 맨 앞의 알파벳 하나만을 추출합니다. 예시 mostWanted("Hello World!") == "l" mostWanted("How do you do?") == "o" mostWanted("One") == "e" mostWanted("Oops!") == "o" mostWanted("AAaooo!!!!") == "a" mostWanted("abe") == "a" 모범 답안 "use strict"; f..
2020.03.25 -
JavaScript 코딩 연습 / Weak Point
문제 / 웹사이트 약점 (Weak Point) / CheckiO 난이도 Simple / 초급 내용 우주여행에서는 우주선 외벽을 튼튼하게 유지하는 것이 필수적입니다. Stephan은 이를 위해 외벽을 스캔해 각 부분의 내구도를 행렬의 형태로 나타내려고 합니다. 내구도는 양의 정수로 표시되며, 숫자가 0에 가까울수록 내구성이 약한 것입니다. 우주선의 약점은 제일 약한(= 각 행과 열의 합계가 제일 작은) 행과 열이 만나는 지점입니다. 내구도 분포가 정사각행렬의 형태로 주어진다고 할 때, 우주선의 약점을 구하는 함수를 작성하세요. ※ 정사각행렬: 같은 수의 행과 열을 갖는 행렬 (n*n 행렬) 예시 weakPoint([[7, 2, 7, 2, 8], [2, 9, 4, 1, 7], [3, 8, 6, 2, 4], ..
2020.03.12 -
JavaScript 코딩 연습 / Moore Neighborhood
문제 / 웹사이트 무어의 이웃(Moore Neighbourhood) / CheckiO 난이도 Simple / 초급 내용 격자형 보드게임판에 말들을 무작위로 얹어놓는다고 할 때, 특정 칸과 1칸 이내(가로/세로/대각선)로 이웃하는 말의 개수를 구하세요. 말이 놓인 격자는 1, 말이 없는 격자는 0으로 표현됩니다. 예시 countNeighbours([[1, 0, 0, 1, 0], [0, 1, 0, 0, 0], [0, 0, 1, 0, 1], [1, 0, 0, 0, 0], [0, 0, 1, 0, 0]], 1, 2) == 3 countNeighbours([[1, 0, 0, 1, 0], [0, 1, 0, 0, 0], [0, 0, 1, 0, 1], [1, 0, 0, 0, 0], [0, 0, 1, 0, 0]], 0, ..
2020.03.11 -
JavaScript 코딩 연습 / Median
문제 / 웹사이트 중앙값 (Median) / CheckiO 난이도 Simple / 초급 내용 숫자로 이루어진 배열에서, 중앙값(median)을 구하는 함수를 작성하세요. ※ 중앙값(median): 주어진 값들을 순서대로 정렬했을 때 중앙에 위치하는 값. 값이 짝수개일 경우 중앙에 위치한 두 값의 평균이 됨. 예 median([1, 2, 3, 4, 5]) == 3 median([3, 1, 2, 5, 3]) == 3 median([1, 300, 2, 200, 1]) == 2 median([3, 6, 20, 99, 10, 15]) == 12.5 모범 답안 "use strict"; function median(data) { data = data.sort((a, b) => a - b) n = Math.floor(..
2020.03.10 -
JavaScript 코딩 연습 / Non-unique Elements
문제 / 웹사이트 고유하지 않은 값(Non-unique Elements) / CheckiO 난이도 Simple / 초급 내용 숫자값으로 이루어진 배열에서, 하나만 존재하는 값을 제외시킨 배열을 반환하는 함수를 작성하세요. 예 nonUniqueElements([1, 2, 3, 1, 3]) == [1, 3, 1, 3] nonUniqueElements([1, 2, 3, 4, 5]) == [] nonUniqueElements([5, 5, 5, 5, 5]) == [5, 5, 5, 5, 5] nonUniqueElements([10, 9, 10, 10, 9, 8]) == [10, 9, 10, 10, 9] 모범 답안 "use strict"; function checkio(data) { return data.filter..
2020.03.07 -
JavaScript 코딩 연습 / Long Repeat
문제 / 웹사이트 장문 반복(Long Repeat) / CheckiO 난이도 Elementary / 기초 내용 문자열 중 가장 많이 반복되는 문자의 갯수를 구하는 함수를 작성하세요. 예 longRepeat('sdsffffse') == 4 longRepeat('ddvvrwwwrggg') == 3 모범 답안 "use strict"; function longRepeat(line) { return line.replace(/(.)(?!\1|$)/g, '$1_').split('_').sort( (a, b) => b.length - a.length )[0].length; } "use strict"; function longRepeat(line) { return line.length && Math.max.apply(n..
2020.03.07