-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathContents.swift
More file actions
39 lines (25 loc) · 952 Bytes
/
Contents.swift
File metadata and controls
39 lines (25 loc) · 952 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import Foundation
public func solution(_ A : inout [Int]) -> Int {
// write your code in Swift 4.2.1 (Linux)
if A.count == 0 {
return 0
}
let uniqueValues = Set(A)
return uniqueValues.count
}
var A = [2,1,1,2,3,1] // -> 3
var A2 = [-1000000, 1000000]
print(solution(&A2))
// MARK: - Prompt
/*
Write a function
public func solution(_ A : inout [Int]) -> Int
that, given an array A consisting of N integers, returns the number of distinct values in array A.
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.
Write an efficient algorithm for the following assumptions:
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].
*/