Algorithm/코딜리티
-
(코딜리티) Lesson 8. [Leader] : EquiLeader - pythonAlgorithm/코딜리티 2021. 1. 28. 18:47
문제 : app.codility.com/programmers/lessons/8-leader/equi_leader/ EquiLeader coding task - Learn to Code - Codility Find the index S such that the leaders of the sequences A[0], A[1], ..., A[S] and A[S + 1], A[S + 2], ..., A[N - 1] are the same. app.codility.com 문제 내용 비어 있지 않은 N개의 배열 A가 주어질 때, S는 0 left_leader_count: left_leader = a left_leader_count = left_dict[a] if left_leader_count > left_len/..
-
(코딜리티) Lesson 8. [Leader] : Dominator - pythonAlgorithm/코딜리티 2021. 1. 28. 18:33
문제 : app.codility.com/programmers/lessons/8-leader/dominator/ 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 문제 내용 N개의 배열 A가 주어질 때, 배열 A의 지배자를 찾아내시오. 지배자는 각 배열 요소의 값이 배열의 반 넘게 발생하면, 이 값은 배열 A의 지배자라고 할 수 있다. 예를 들어, A = [3, 4, 3, 2, 3, -1 ,3 ,3]일 때, 3이 총 5번으로 8개중에 반 넘게 등장하므로, 지배자는 3이고..
-
(코딜리티) Lesson 7. [Stacks and Queues] : StoneWall - pythonAlgorithm/코딜리티 2021. 1. 28. 00:00
문제 : app.codility.com/programmers/lessons/7-stacks_and_queues/stone_wall/ StoneWall coding task - Learn to Code - Codility Cover "Manhattan skyline" using the minimum number of rectangles. app.codility.com 문제 내용 돌로 된 벽을 만들려고 한다. N미터가 담겨있는 배열 H를 제공할 때, 최소한의 벽돌 갯수를 return하시오. I는 벽돌의 위치로 왼쪽에서 시작하여 오른쪽으로 끝이나며, H[I] = 미터이다. 예를 들어, H = [8, 8, 5, 7, 9, 8, 7, 4, 8]인 경우, H[0]과 H[1]은 길이가 같아서 1개의 벽돌만 있어도 된..
-
(코딜리티) Lesson 7. [Stacks and Queues] : Nesting - pythonAlgorithm/코딜리티 2021. 1. 27. 20:04
문제 : app.codility.com/programmers/lessons/7-stacks_and_queues/nesting/ Nesting coding task - Learn to Code - Codility Determine whether a given string of parentheses (single type) is properly nested. app.codility.com 문제 내용 N개의 문자로 이루어진 문자열 S가 주어질 때, 아래의 조건일 경우 올바르게 중첩됬다고 한다. S가 비어있는 경우 S가 "()"일 경우 예를 들어, S = "(()(())())"또는 "())"가 주어질 때, 전자는 올바르게 중첩되어 1을 return하고, 후자는 잘못되어 0을 return한다. 제한 사항 N은 0..
-
(코딜리티) Lesson 7. [Stacks and Queues] : Fish - pythonAlgorithm/코딜리티 2021. 1. 26. 19:28
문제 : app.codility.com/programmers/lessons/7-stacks_and_queues/fish/ Fish coding task - Learn to Code - Codility N voracious fish are moving along a river. Calculate how many fish are alive. app.codility.com 문제 내용 2개의 비어있지 않은 N개의 배열 A와 B가 주어질 때, A는 물고기의 크기를 담은 배열이고, B는 물고기의 방향을 담은 배열이다. 이 때, B는 0또는 1값만 가지며, 이는 아래와 같다. 0은 상류로 가는 물고기를 나타낸다. 1은 하류로 가는 물고기를 나타낸다. 만약 B[P] = 1이고, B[P] = 0이면 물고기는 만나며, 더..
-
(코딜리티) Lesson 7. [Stacks and Queues] : Brackets - pythonAlgorithm/코딜리티 2021. 1. 26. 18:52
문제 : app.codility.com/programmers/lessons/7-stacks_and_queues/brackets/ 문제 내용 N개의 문자로 이루어진 문자열 S가 주어질 때, 아래의 조건인 경우 1을 return합니다. S는 비어있을 때 S는 "( )" 또는 "[ ]" 또는 "{ }" 를 가질 때 적절하게 중첩되어 있다고 할 수 있다. 예를 들어, S = "{[()()]}" or "([)()]"이 주어질 때, 전자는 적절하게 중첩되어 있으므로, 1을 return하고, 후자는 잘못 중첩되어 있기 때문에 0을 return한다. 제한 사항 N은 0~200,000사이 S를 구성하는 문자는 "(", "{", "[", "]", "}", ")" 코드 def solution(S): stack = [] fo..
-
(코딜리티) Lesson 6. [sorting] : triangle- pythonAlgorithm/코딜리티 2021. 1. 26. 18:46
이전 문제부터는 여태 수학적으로 정의 되어있거나, 수 많은 테스트 케이스를 생각해서 증명해내기에 머리에 한계가 있어서 그런지.. 이것 저것 추측하면서 해보고 이렇게 하면 되는 구나하고 이해하는 단계가 된 것 같습니다.. 공부하는데 영 찝찝하네요.. 문제 : app.codility.com/programmers/lessons/6-sorting/triangle/ Triangle coding task - Learn to Code - Codility Determine whether a triangle can be built from a given set of edges. app.codility.com 문제 내용 N개의 배열 A를 주어질 때, 만약 0 A[R], A[Q] + A[R] > A[P], A[R] + A[..
-
(코딜리티) Lesson 6. [Sorting] : NumberOfDiscIntersections - pythonAlgorithm/코딜리티 2021. 1. 25. 19:14
이 문제는 문제자체를 이해하지 못해서 풀지 못하고, 이해하고 난 뒤에는 효율성문제로 결국 풀지 못하였습니다. intersection을 계속 접점으로만 이해해서.. 왜 11이 return되는 거지 생각했지만, 알고보니 원과 원이 겹쳐지는 것을 의미하더군요.. 그리고 알고리즘은 이해는 했으나, 원리가 어디서 나오는 건지 이해할 수 없어서 제가 완벽히 이해한 문제는 아닌 것 같습니다 ㅠㅠ.. 문제 : app.codility.com/programmers/lessons/6-sorting/number_of_disc_intersections/ NumberOfDiscIntersections coding task - Learn to Code - Codility Compute the number of intersectio..