Skip to content

Commit 9511daf

Browse files
authored
Merge pull request #648 from fartem/2540_Minimum_Common_Value
2024-06-18 v. 5.9.1: added "2540. Minimum Common Value"
2 parents c36bb21 + 7977446 commit 9511daf

File tree

4 files changed

+42
-1
lines changed

4 files changed

+42
-1
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -451,3 +451,4 @@ Profile on LeetCode: [fartem](https://leetcode.com/fartem/).
451451
| 2525. Categorize Box According to Criteria | [Link](https://leetcode.com/problems/categorize-box-according-to-criteria/) | [Link](./lib/easy/2525_categorize_box_according_to_criteria.rb) |
452452
| 2529. Maximum Count of Positive Integer and Negative Integer | [Link](https://leetcode.com/problems/maximum-count-of-positive-integer-and-negative-integer/) | [Link](./lib/easy/2529_maximum_count_of_positive_integer_and_negative_integer.rb) |
453453
| 2535. Difference Between Element Sum and Digit Sum of an Array | [Link](https://leetcode.com/problems/difference-between-element-sum-and-digit-sum-of-an-array/) | [Link](./lib/easy/2535_difference_between_element_sum_and_digit_sum_of_an_array.rb) |
454+
| 2540. Minimum Common Value | [Link](https://leetcode.com/problems/minimum-common-value/) | [Link](./lib/easy/2540_minimum_common_value.rb) |

leetcode-ruby.gemspec

Lines changed: 1 addition & 1 deletion
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 = '5.9.0'
8+
s.version = '5.9.1'
99
s.license = 'MIT'
1010
s.files = ::Dir['lib/**/*.rb'] + %w[bin/leetcode-ruby README.md LICENSE]
1111
s.executable = 'leetcode-ruby'

lib/easy/2540_minimum_common_value.rb

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# frozen_string_literal: true
2+
3+
# https://leetcode.com/problems/minimum-common-value/
4+
# @param {Integer[]} nums1
5+
# @param {Integer[]} nums2
6+
# @return {Integer}
7+
def get_common(nums1, nums2)
8+
last_min = 0
9+
nums1.each do |num|
10+
(last_min...nums2.length).each do |i|
11+
curr = nums2[i]
12+
13+
return num if curr == num
14+
15+
next unless curr > num
16+
17+
last_min = i
18+
19+
break
20+
end
21+
end
22+
23+
-1
24+
end
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# frozen_string_literal: true
2+
3+
require_relative '../test_helper'
4+
require_relative '../../lib/easy/2540_minimum_common_value'
5+
require 'minitest/autorun'
6+
7+
class MinimumCommonValueTest < ::Minitest::Test
8+
def test_default
9+
assert_equal(2, get_common([1, 2, 3], [2, 4]))
10+
assert_equal(2, get_common([1, 2, 3, 6], [2, 3, 4, 5]))
11+
end
12+
13+
def test_additional
14+
assert_equal(-1, get_common([1], [4]))
15+
end
16+
end

0 commit comments

Comments
 (0)