본문 바로가기
반응형

분류 전체보기706

[Codility] Dominator (Easy) by javascript - AVAILABLE LESSONS 8 ▷ 문제 : AVAILABLE LESSONS 8 - Dominator (Easy) Dominator coding task - Learn to Code - Codility Find an index of an array such that its value occurs at more than half of indices in the array. app.codility.com ▷ 해결 날짜 : 2022.04.20 ▷ 소요 시간 : 15분 ▷ 풀이 과정 : 중복되는 숫자의 개수가 배열 길이의 절반보다 큰 경우를 해당 숫자의 인덱스 번호를 출력하는 문제다. map을 사용해 개수를 세주고 그다음에 조건에 맞는 인덱스를 바로 출력해주는 로직을 짜서 풀었다. ▷ 구현 function solution(A) { if(!A... 2022. 4. 20.
[Codility] Nesting (Easy) by javascript - AVAILABLE LESSONS 7 ▷ 문제 : AVAILABLE LESSONS 7 - Nesting (Easy) Nesting coding task - Learn to Code - Codility Determine whether a given string of parentheses (single type) is properly nested. app.codility.com ▷ 해결 날짜 : 2022.04.20 ▷ 소요 시간 : 15분 ▷ 풀이 과정 : 이 문제 역시 괄호의 짝을 맞추는건데,앞에서 풀었던 Brackets 문제와 비슷해서 좀 난이도가 쉬운 문제였다. ▷ 구현 function solution(S){ const opened = []; for(let nest of S){ if(nest == '(') opened.push(nest);.. 2022. 4. 20.
[Codility] Fish (Easy) by javascript - AVAILABLE LESSONS 7 ▷ 문제 : AVAILABLE LESSONS 7 - Fish (Easy) Fish coding task - Learn to Code - Codility N voracious fish are moving along a river. Calculate how many fish are alive. app.codility.com ▷ 해결 날짜 : 2022.04.20 ▷ 소요 시간 : 40분 ▷ 풀이 과정 : 내려오는 물고기와 올라가는 물고기를 싸움 붙여서 마지막에 살아남은 물고기의 개수를 출력하는 문제이다.덩치큰 물고기가 덩치가 작은 물고기를 잡아먹는 구조이며 속도가 같아 같은 방향의 물고기끼리는 만날수 없다. 처음에는 올라가는 물고기 내려가는 물고기 둘다 나눠서 배열에 담아주려다가굳이 올라가는 물고기는 필요없을.. 2022. 4. 20.
[Codility] Brackets (Easy) by javascript - AVAILABLE LESSONS 7 ▷ 문제 : AVAILABLE LESSONS 7 - Brackets (Easy) Brackets coding task - Learn to Code - Codility Determine whether a given string of parentheses (multiple types) is properly nested. app.codility.com ▷ 해결 날짜 : 2022.04.20 ▷ 소요 시간 : 30분 ▷ 풀이 과정 : 괄호의 짝을 맞추는 문제이다. 일단 Lesson7 은 Stacks and Queues 문제이기 때문에 이 문제는 Stack을 사용하면 된다는 것을 알 수 있다. 여는 괄호가 나왔을 때 스택에 담아두고 닫는 괄호가 나왔을때 하나씩 배서 비교해주는 로직을 만들어주면 구현할 수 있다. 몇.. 2022. 4. 20.
[HackerRank] Repeated String (Easy) by javascript ▷ 문제 : Repeated String (Easy) Repeated String | HackerRank Find and print the number of letter a's in the first n letters of an infinitely large periodic string. www.hackerrank.com ▷ 해결 날짜 : 2022.04.19 ▷ 소요 시간 : 20분 ▷ 풀이 과정 : 문자열과 최대길이가 주어지고 문자열을 최대길이까지 반복했을때 나오는 'a'문자가 몇개인지 반환하는 문제이다. 제한사항에 주어진 문자열의 길이제한이 너무 길어서 그냥 단순하게 풀면 에러가 발생한다. 그래서 우선 최대한 문자열의 원본상태가 반복되는 구간까지 구한다음 나머지 문자열을 잘라 붙이고 거기서 각각의 '.. 2022. 4. 19.
[HackerRank] Migratory Birds (Easy) by javascript ▷ 문제 : Migratory Birds (Easy) Migratory Birds | HackerRank Determine which type of bird in a flock occurs at the highest frequency. www.hackerrank.com ▷ 해결 날짜 : 2022.04.19 ▷ 소요 시간 : 10분 ▷ 풀이 과정 : 가장 많이 사용된 번호를 반환하는건데 가장 많이 사용된 번호가 여러개일 경우 가장 작은수를 반환하면 되는 문제이다. 적절하게 Map을 사용하면 손쉽게 해결할 수 있다. 결과값을 뽑을때 배열 메서드를 사용하면 한줄이면 될 거 같은데, 그냥 성능상 for문 한번이면 될 거 같아서 for문을 돌려서 결과값을 뽑아냈다. ▷ 구현 function migratoryBir.. 2022. 4. 19.
[HackerRank] Non-Divisible Subset(Medium) by javascript ▷ 문제 : Non-Divisible Subset (Medium) Non-Divisible Subset | HackerRank Find the size of the maximal non-divisible subset. www.hackerrank.com ▷ 해결 날짜 : 2022.04.19 ▷ 소요 시간 : 2시간 ▷ 풀이 과정 : 이 문제는 토론장의 도움을 받아 해결했으나 사실 아직까지도 제대로 이해를 못 했다... 일단 이 문제는 s 배열에서 두 원소의 합이 k의 배수가 아닌 것들의 개수를 구하면 되는 문제다. 시간 복잡도에 걸리지 않게 조합을 만들어 푼다기보다 개수만 세어주는 편이 좋다. 그렇기 때문에 나머지를 이용해서 문제를 해결해야 하는데, 임의의 숫자 k에 대해 (a + b) % k === 0의.. 2022. 4. 19.
[HackerRank] Climbing the Leaderboard (Medium) by javascript ▷ 문제 : Climbing the Leaderboard (Medium) Climbing the Leaderboard | HackerRank Help Alice track her progress toward the top of the leaderboard! www.hackerrank.com ▷ 해결 날짜 : 2022.04.19 ▷ 소요 시간 : 50분 ▷ 풀이 과정 : 이번 문제는 플레이어가 점수를 갱신할 때 마다 변경된 랭크를 반환해 주는 문제이다. ranked = [100, 90, 90, 80] , player = [70, 80, 105] 를 입력 받았을 때 결과값으로는 [4, 3, 1]을 반환해줘야 한다. 우선 여기서 까다로운점은 공동 순위가 존재해 저 ranked 의 순위는 [1, 2, 2, 3].. 2022. 4. 19.
[HackerRank] Number Line Jumps(Easy) by javascript ▷ 문제 : Number Line Jumps (Easy) Number Line Jumps | HackerRank Can two kangaroo meet after making the same number of jumps? www.hackerrank.com ▷ 해결 날짜 : 2022.04.19 ▷ 소요 시간 : 20분 ▷ 풀이 과정 : 두 캥거루가 점프해서 앞을 나아가는데 둘이 겹치는 부분이 있는지 없는지를 체크하는 문제이다. x1, v1, x2, v2 매개변수가 주어지는데, x 는 캥거루 v는 점프 거리이며 x2가 항상 멀리서 시작한다는 점을 염두해 두고 풀면 단순 반복문으로도 쉽게 풀 수 있다. ▷ 구현 function kangaroo(x1, v1, x2, v2) { // Write your code .. 2022. 4. 19.
반응형
TOP