Skip to content

Commit 77fac88

Browse files
authored
2025-04-29 v. 9.3.6: added "3516. Find Closest Person"
2 parents 362d46d + 6278d6d commit 77fac88

File tree

4 files changed

+49
-2
lines changed

4 files changed

+49
-2
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,7 @@ Profile on LeetCode: [fartem](https://leetcode.com/fartem/).
467467
| 3210. Find the Encrypted String | [Link](https://leetcode.com/problems/find-the-encrypted-string/) | [Link](./lib/easy/3210_find_the_encrypted_string.rb) | [Link](./test/easy/test_3210_find_the_encrypted_string.rb) |
468468
| 3280. Convert Date to Binary | [Link](https://leetcode.com/problems/convert-date-to-binary/) | [Link](./lib/easy/3280_convert_date_to_binary.rb) | [Link](./test/easy/test_3280_convert_date_to_binary.rb) |
469469
| 3498. Reverse Degree of a String | [Link](https://leetcode.com/problems/reverse-degree-of-a-string/) | [Link](./lib/easy/3498_reverse_degree_of_a_string.rb) | [Link](./test/easy/test_3498_reverse_degree_of_a_string.rb) |
470+
| 3516. Find Closest Person | [Link](https://leetcode.com/problems/find-closest-person/) | [Link](./lib/easy/3516_find_closest_person.rb) | [Link](./test/easy/test_3516_find_closest_person.rb) |
470471

471472
### Medium
472473

leetcode-ruby.gemspec

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ require 'English'
55
::Gem::Specification.new do |s|
66
s.required_ruby_version = '>= 3.0'
77
s.name = 'leetcode-ruby'
8-
s.version = '9.3.5.1'
8+
s.version = '9.3.6'
99
s.license = 'MIT'
1010
s.files = ::Dir['lib/**/*.rb'] + %w[README.md]
1111
s.executable = 'leetcode-ruby'
@@ -14,12 +14,12 @@ require 'English'
1414
s.authors = ['Artem Fomchenkov']
1515
s.email = 'artem.fomchenkov@outlook.com'
1616
s.homepage = 'https://github.com/fartem/leetcode-ruby'
17-
s.test_files = s.files.grep(%r{^(test)/})
1817
s.extra_rdoc_files = ['README.md']
1918

2019
s.add_development_dependency('minitest', '5.18.0')
2120
s.add_development_dependency('open-uri', '0.3.0')
2221
s.add_development_dependency('rake', '12.3.3')
2322
s.add_development_dependency('rubocop', '1.7.0')
2423
s.add_development_dependency('simplecov', '0.22.0')
24+
s.metadata['rubygems_mfa_required'] = 'true'
2525
end

lib/easy/3516_find_closest_person.rb

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# frozen_string_literal: true
2+
3+
# https://leetcode.com/problems/find-closest-person/
4+
# @param {Integer} x
5+
# @param {Integer} y
6+
# @param {Integer} z
7+
# @return {Integer}
8+
def find_closest(x, y, z)
9+
return 0 if (z - x).abs == (z - y).abs
10+
11+
(z - x).abs < (z - y).abs ? 1 : 2
12+
end
+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# frozen_string_literal: true
2+
3+
require_relative '../test_helper'
4+
require_relative '../../lib/easy/3516_find_closest_person'
5+
require 'minitest/autorun'
6+
7+
class FindClosestPersonTest < ::Minitest::Test
8+
def test_default_one
9+
assert_equal(
10+
1,
11+
find_closest(
12+
2, 7, 4
13+
)
14+
)
15+
end
16+
17+
def test_default_two
18+
assert_equal(
19+
2,
20+
find_closest(
21+
2, 5, 6
22+
)
23+
)
24+
end
25+
26+
def test_default_three
27+
assert_equal(
28+
0,
29+
find_closest(
30+
1, 5, 3
31+
)
32+
)
33+
end
34+
end

0 commit comments

Comments
 (0)