목록분류 전체보기 (205)
0 단계 : 안전지대 코딩테스트 연습 > 코딩테스트 입문 > 안전지대 다음 그림과 같이 지뢰가 있는 지역과 지뢰에 인접한 위, 아래, 좌, 우 대각선 칸을 모두 위험지역으로 분류합니다. 지뢰는 2차원 배열 board에 1로 표시되어 있고 board에는 지뢰가 매설 된 지역 1과, 지뢰가 없는 지역 0만 존재합니다. 지뢰가 매설된 지역의 지도 board가 매개변수로 주어질 때, 안전한 지역의 칸 수를 return하도록 solution 함수를 완성해주세요. 제한사항 board는 n * n 배열입니다. 1 ≤ n ≤ 100 지뢰는 1로 표시되어 있습니다. board에는 지뢰가 있는 지역 1과 지뢰가 없는 지역 0만 존재합니다. 입출력 예 board result [[0, 0, 0, 0, 0], [0, 0, 0,..
0 단계 : 배열의 길이를 2의 거듭제곱으로 만들기 코딩테스트 연습 > 코딩 기초 트레이닝 > 배열의 길이를 2의 거듭제곱으로 만들기 정수 배열 arr이 매개변수로 주어집니다. arr의 길이가 2의 정수 거듭제곱이 되도록 arr 뒤에 정수 0을 추가하려고 합니다. arr에 최소한의 개수로 0을 추가한 배열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ arr의 길이 ≤ 1,000 1 ≤ arr의 원소 ≤ 1,000 입출력 예 arr result [1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6, 0, 0] [58, 172, 746, 89] [58, 172, 746, 89] 입출력 예 설명 입출력 예 #1 예제 1번의 arr의 길이는 6입니다. arr의 길이를 ..
0 단계 : 배열 만들기2 코딩테스트 연습 > 코딩 기초 트레이닝 > 배열 만들기2 정수 l과 r이 주어졌을 때, l 이상 r이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요. 만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다. 제한사항 1 ≤ l ≤ r ≤ 1,000,000 입출력 예 l r result 5 555 [5, 50, 55, 500, 505, 550, 555] 10 20 [-1] 입출력 예 설명 입출력 예 #1 5 이상 555 이하의 0과 5로만 이루어진 정수는 작은 수부터 5, 50, 55, 500, 505, 550, 555가 있습니다. 따라서 [5, 50, 55, 500, ..
0 단계 : 문자열 묶기 코딩테스트 연습 > 코딩 기초 트레이닝 > 문자열 묶기 문자열 배열 strArr이 주어집니다. strArr의 원소들을 길이가 같은 문자열들끼리 그룹으로 묶었을 때 가장 개수가 많은 그룹의 크기를 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ strArr의 길이 ≤ 100,000 1 ≤ strArr의 원소의 길이 ≤ 30 strArr의 원소들은 알파벳 소문자로 이루어진 문자열입니다. 입출력 예 strArr result ["a","bc","d","efg","hi"] 2 입출력 예 설명 입출력 예 #1 각 문자열들을 길이에 맞게 그룹으로 묶으면 다음과 같습니다. 문자열 길이 문자열 목록 개수 1 ["a","d"] 2 2 ["bc","hi"] 2 3 ["efg..
0 단계 : 날짜 비교하기 코딩테스트 연습 > 코딩 기초 트레이닝 > 날짜 비교하기 정수 배열 date1과 date2가 주어집니다. 두 배열은 각각 날짜를 나타내며 [year, month, day] 꼴로 주어집니다. 각 배열에서 year는 연도를, month는 월을, day는 날짜를 나타냅니다. 만약 date1이 date2보다 앞서는 날짜라면 1을, 아니면 0을 return 하는 solution 함수를 완성해 주세요. 제한사항 date1의 길이 = date2의 길이 = 3 0 ≤ year ≤ 10,000 1 ≤ month ≤ 12 day는 month에 따라 가능한 날짜로 주어집니다. 입출력 예 date1 date2 result [2021, 12, 28] [2021, 12, 29] 1 [1024, 10, ..
0 단계 : 그림확대 코딩테스트 연습 > 코딩 기초 트레이닝 > 그림확대 직사각형 형태의 그림 파일이 있고, 이 그림 파일은 1 × 1 크기의 정사각형 크기의 픽셀로 이루어져 있습니다. 이 그림 파일을 나타낸 문자열 배열 picture과 정수 k가 매개변수로 주어질 때, 이 그림 파일을 가로 세로로 k배 늘린 그림 파일을 나타내도록 문자열 배열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ picture의 길이 ≤ 20 1 ≤ picture의 원소의 길이 ≤ 20 모든 picture의 원소의 길이는 같습니다. picture의 원소는 '.'과 'x'로 이루어져 있습니다. 1 ≤ k ≤ 10 입출력 예 picture k result [".xx...xx.", "x..x.x..x",..
0 단계 : 겹치는 선분의 길이 코딩테스트 연습 > 코딩테스트 입문 > 겹치는 선분의 길이 선분 3개가 평행하게 놓여 있습니다. 세 선분의 시작과 끝 좌표가 [[start, end], [start, end], [start, end]] 형태로 들어있는 2차원 배열 lines가 매개변수로 주어질 때, 두 개 이상의 선분이 겹치는 부분의 길이를 return 하도록 solution 함수를 완성해보세요. lines가 [[0, 2], [-3, -1], [-2, 1]]일 때 그림으로 나타내면 다음과 같습니다. 선분이 두 개 이상 겹친 곳은 [-2, -1], [0, 1]로 길이 2만큼 겹쳐있습니다. 제한사항 lines의 길이 = 3 lines의 원소의 길이 = 2 모든 선분은 길이가 1 이상입니다. lines의 원소는..
0 단계 : A 강조하기 코딩테스트 연습 > 코딩 기초 트레이닝 > A 강조하기 문자열 myString이 주어집니다. myString에서 알파벳 "a"가 등장하면 전부 "A"로 변환하고, "A"가 아닌 모든 대문자 알파벳은 소문자 알파벳으로 변환하여 return 하는 solution 함수를 완성하세요. 제한사항 1 ≤ myString의 길이 ≤ 20 myString은 알파벳으로 이루어진 문자열입니다. 입출력 예 myString result "abstract algebra" "AbstrAct AlgebrA" "PrOgRaMmErS" "progrAmmers" 입출력 예 설명 입출력 예 #1 0번, 5번, 9번, 15번 인덱스의 "a"는 소문자이므로 전부 대문자로 고쳐줍니다. 다른 문자들은 전부 "a"가 아닌..
0 단계 : 정수를 나선형으로 배치하기 코딩테스트 연습 > 코딩 기초 트레이닝 > 정수를 나선형으로 배치하기 양의 정수 n이 매개변수로 주어집니다. n × n 배열에 1부터 n2 까지 정수를 인덱스 [0][0]부터 시계방향 나선형으로 배치한 이차원 배열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ n ≤ 30 입출력 예 n result 4 [[1, 2, 3, 4], [12, 13, 14, 5], [11, 16, 15, 6], [10, 9, 8, 7]] 5 [[1, 2, 3, 4, 5], [16, 17, 18, 19, 6], [15, 24, 25, 20, 7], [14, 23, 22, 21, 8], [13, 12, 11, 10, 9]] 입출력 예 설명 입출력 예 #1 예제 1..
JS function vs arrow function function 키워드의 쓰임새 1. 실행문으로써의 일반함수 function normalFunc(...args) { console.log(this); // window(브라우저 환경) || global (Nodejs 환경) return args; } const ret = normalFunc(1, 2); console.log(ret); // [ 1, 2 ] 2. 생성자함수로써의 함수 // 생성자 함수 정의 function Person(name, age) { this.name = name; this.age = age; } // 생성자 함수의 프로토타입에 메서드 추가 Person.prototype.sayHello = function () { console...