category개발노트JavaScript

  1. Codility Lesson 4 — FrogRiverOne
    📆📂개발노트JavaScript

    Task description 시간별 개구리의 위치 정보를 담고있는 배열 A(배열 인덱스가 초단위 시간, 값이 위치), 강의 끝 위치 X가 주어졌을 때 모든 위치를 거치게되는 가장 빠른 시간 찾기 모든 위치를 거치지 못한다면 -1을 반환 How I did solve 각 위치당 시간 정보를 가진 새로운 배열이 필요 각 위치를 배열의 index로 사용 X 길이 만큼의 배열 생성 각 위치에 시간 기록 이미 기록된 위치에는 재작성하지 않아야 함 배열에 모든 요소가 값이 있다면 가장 높은 값을 반환 그렇지 않으면 -1 반환

  2. Codility Lesson — PermCheck
    📆📂개발노트JavaScript

    Task description 주어진 배열이 순열이면 1 그렇지 않으면 0을 반환 How I did solve 순열이라면, 1 + (N), 2 + (N-1), 3 + (N-2)이 모두 같은 값을 가질 것으로 가정 주어진 배열을 오름차순으로 정렬 후, 순차적으로 더한 값을 비교해가면 누락된 숫자가 있는 경우 해당 합에서 차이가 발생할 것이므로 O(n/2)로 해결 가능할 것으로 추측 Solved Code function solution(A) { const arr = A.sort( (a, b) => a - b )

  3. Codility Lesson 3 — tapeEquilibrium
    📆📂개발노트JavaScript

    Task description |(A[0] + … + A[P-1]) - (A[P] + … + A[N-1])| 최소값 찾기 How I did solve 배열의 전체 합 sumOfTatal을 구함 A의 요소를 탐색해가며 탐색한 요소들의 합을 구하면 A[0] + … + A[P-1] 탐색한 요소들의 합을 전체 합에서 빼면 A[P] + … + A[N−1] 둘의 차이 중 최소값을 반환 Solved Code function solution(A) { const sumOfTotal = A.reduce( (acc, entry)

  4. Codility Lesson 3 — PermMissingElm
    📆📂개발노트JavaScript

    Task description 주어진 순열에서 누락된 요소 찾기 How I did solve 1 ~ (N + 1) 까지의 순열이 있다고 할 때, 단 1개의 요소만이 누락되어 있다면 누락되지 않은 순열의 합과 현재 순열의 합의 차이가 곧 누락된 요소 1 ~ N 까지의 합 (1 + N) * N / 2 1 ~ (N+1)까지의 합 (2 + N) * (N + 1) / 2 Solved Code function solution(A) { let sumNonMissing = (A.length + 2) * (A.length +

  5. Codility Lesson 3 — FrogJump
    📆📂개발노트JavaScript

    Task description 위치 X에서 Y까지 최소 점프 횟수를 계산합니다. How I did solve position X에서 position Y로 이동하는데 한 번에 D 만큼 이동한다면, 총 이동거리 (Y - X) = n * 1회 이동거리(D) 소수점은 1회 이동을 해야 하므로 올림 처리 Solved Code function solution(X, Y, D) { return Math.ceil((Y - X) / D) } Retrospective 이 문제는 고민할 필요도 없이 바로 풀이가 도출 됨… 혹시 다른

  6. Codility Lesson 2 — CyclicRotation
    📆📂개발노트JavaScript

    Task description 주어진 수만큼 배열을 오른쪽으로 이동 How I did solve 주어진 값이 A = [3, 8, 9, 7, 6] , K = 3 일 경우 결과는 [9, 7, 6, 3, 8] 즉, 3만큼 오른쪽으로 이동시킬 경우 뒤에서 3개 요소를 앞으로, 나머지를 그 뒤에 나열시키는 새로운 배열 반환. 이를 위해서는 array.length - 3부터 마지막 요소까지를 slice ,나머지를 slice slice된 배열을 접합 K가 배열 길이를 넘어설 경우 n회의 cycle을 돌아 제자리가 되므로 K를

  7. Codility Lesson 2 — OddOccurrencesInArray
    📆📂개발노트JavaScript

    Task description 주어진 홀수 개의 요소를 가진 배열에서 짝을 이루지 않은 한 요소의 값 구하기 How I did solve 배열 내 모든 요소에 대해 XOR 연산 Solved Code function solution(A) { return A.reduce( ( acc, entry) => acc^entry, 0 ); } Retrospective 이 부분은 얼마 전에 이미 비트 연산으로 같은 값을 XOR 연산하면 0이 된다는 사실을 보았기 때문에, 아직 기억 속에 머물러 있어서 큰 고민 없이 풀었을 뿐이라 만일 비트

  8. Codility Lesson 1 — BinaryGap
    📆📂개발노트JavaScript

    Task 주어진 정수의 2진 표현에서 가장 긴 zero sequence 구하기. How I did solve binary 변환 주어진 정수를 2로 나누어 나눈 나머지를 뒤에서부터 채움 몫을 다시 2로 나눈 나머지를 그 다음에 채움 몫이 0이 될 때까지 반복 => 재귀 함수 이용 zero gap 구하기 binary를 문자열로 받아서 trailing zero 제거 : 정규식 이용 1로 split하여 zero gap 배열을 취하고 이를 오름차순 정렬 배열의 마지막 요소의 길이를 반환 배열의 마지막 요소가 없을 경우 0 반환

  9. 접근성 향상을 위한 이름 짓기
    📆📂개발노트A11Y

    ※ 이 글은 Hidde de Vries가 작성한 Naming things to improve accessibility를 를 원작자의 허가를 받고 번역한 글입니다. 일부 오역이 있을 수 있습니다. 접근성을 향상시키기 위해 할 수 있는 한 가지는 항상 개체들에 접근 가능한 이름을 지정하는 것입니다. 고유하고 유용한 이름은 이상적으로 탐색에 유용할 수 있습니다. 이 게시글에서는 브라우저가 링크, 양식 필드, 테이블, 양식 그룹들의 이름을 결정하는 방법을 설명합니다. 이 게시글은 지난 로테르담에서의 WordCamp에서 발표한 당신의

  10. 접근성 교육에서 자주 나오는 상위 5가지 질문
    📆📂개발노트A11Y

    ※ 이 글은 Carie Fisher가 Deque Blog에 작성한 Top 5 Questions Asked in Accessibility Trainings를 원작자의 허가를 받고 번역한 글입니다. 일부 오역이 있을 수 있습니다. 디지털 접근성 세계에서 일하기 딱 좋은 시기입니다! 불과 몇 년전만 해도 접근성 스페셜리스트로서의 업무를 찾는 것 — 특히 민간 기업에서 찾는 경우에는 더욱더 어려울 수 있었습니다. 일부 채용이 열리기도 했지만, "정규"직에 덧붙인 파트타임으로 담당하거나 UX 부서의 일부로 있을