"Contains Duplicate III" medium task No 220 accepted solution

This commit is contained in:
2022-02-11 01:49:52 +02:00
parent 096546af60
commit 241061cd6d
2 changed files with 34 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
package main
import "math"
func ContainsNearbyAlmostDuplicate(nums []int, k int, t int) bool {
if k < 1 {
return false
}
for wSz := 1; wSz <= k; wSz++ {
ws := 0
for we := ws + wSz; we < len(nums); we++ {
if int(math.Abs(float64(nums[ws]-nums[we]))) <= t {
return true
}
ws++
}
}
return false
}

View File

@@ -0,0 +1,12 @@
package main
import (
"github.com/stretchr/testify/assert"
"testing"
)
func TestContainsNearbyAlmostDuplicate(t *testing.T) {
assert.False(t, ContainsNearbyAlmostDuplicate([]int{1, 5, 9, 1, 5, 9}, 2, 3))
assert.True(t, ContainsNearbyAlmostDuplicate([]int{1, 2, 3, 1}, 3, 0))
assert.True(t, ContainsNearbyAlmostDuplicate([]int{1, 0, 1, 1}, 1, 2))
}