[코딜리티] codility lesson 6 sorting - Distinct 100%
문제.
Programming language: Human language:
Write a function
int solution(int A[], int N);
that, given a zero-indexed array A consisting of N integers, returns the number of distinct values in array A.
Assume that:
- N is an integer within the range [0..100,000];
- each element of array A is an integer within the range [−1,000,000..1,000,000].
For example, given array A consisting of six elements such that:
A[0] = 2 A[1] = 1 A[2] = 1
A[3] = 2 A[4] = 3 A[5] = 1
the function should return 3, because there are 3 distinct values appearing in array A, namely 1, 2 and 3.
Complexity:
- expected worst-case time complexity is O(N*log(N));
- expected worst-case space complexity is O(N), beyond input storage (not counting the storage required for input arguments).
Elements of input arrays can be modified.
Copyright 2009–2017 by Codility Limited. All Rights Reserved. Unauthorized copying, publication or disclosure prohibited.
풀이.
설명.
A배열 요소들의 Distinct Count 를 출력 하라.
레슨 제목에 힌트가 있는 것 같다. 정렬하고 숫자세기인데 위 요구사항에 맞춘 적절한 정렬알고리즘을 선택해야 할 것이다. 근데 그것도 퀵소트를 해야 한다고 하는 것 같다.
함수 정의 상태를 보아하니 리커시브는 물건너 간 것 같다.
그런데 꼭 이러고 돌리면 100% 안되드라!..
어째든. 퀵소트를 뱅글뱅글 돌려서 디스팅트 카운트를 하기로 하고 GO~!
결과적으로 100%를 달성 하긴 했다 작전이 한번에 먹혀 들어 간 것도 오랫만 인듯.
근데 퀵소트 함수가 어딘지 모르게 좀 구린 거 같은 느낌은...
A배열 요소들의 Distinct Count 를 출력 하라.
레슨 제목에 힌트가 있는 것 같다. 정렬하고 숫자세기인데 위 요구사항에 맞춘 적절한 정렬알고리즘을 선택해야 할 것이다. 근데 그것도 퀵소트를 해야 한다고 하는 것 같다.
함수 정의 상태를 보아하니 리커시브는 물건너 간 것 같다.
그런데 꼭 이러고 돌리면 100% 안되드라!..
어째든. 퀵소트를 뱅글뱅글 돌려서 디스팅트 카운트를 하기로 하고 GO~!
결과적으로 100%를 달성 하긴 했다 작전이 한번에 먹혀 들어 간 것도 오랫만 인듯.
근데 퀵소트 함수가 어딘지 모르게 좀 구린 거 같은 느낌은...
댓글
댓글 쓰기