blob: 4ec9ac0f12e8457edb4c445b91bf610a6b6a018f (
plain)
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
|
#!/usr/bin/env ruby
def assert_equal(x, y)
raise [x, y].inspect unless x == y
end
def find_non_duplicate(items)
counts = Hash.new(0)
items.each do |item|
counts[item] += 1
if counts[item].even?
counts.delete(item)
end
end
counts.keys[0]
end
def find_non_duplicate(items)
result = 0
items.each do |item|
result = result ^ item
end
result
end
assert_equal(1, find_non_duplicate([4, 3, 2, 4, 1, 3, 2]))
|