2021-05-01:给定一个有序数组arr,代表坐落在X轴上的点。给定一个正数K,代表绳子的长度。返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。
Posted 福大大架构师每日一题
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-05-01:给定一个有序数组arr,代表坐落在X轴上的点。给定一个正数K,代表绳子的长度。返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。相关的知识,希望对你有一定的参考价值。
2021-05-01:给定一个有序数组arr,代表坐落在X轴上的点。给定一个正数K,代表绳子的长度。返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。
福大大 答案2021-05-01:
滑动窗口。窗口只会变大或者不变,不会变小。最后右指针位置减去左指针位置,就是需要返回的长度。
代码用golang编写。代码如下:
package main
import "fmt"
func main()
arr := []int1, 4, 5, 6, 9, 10, 12, 17
ret := maxPoint(arr, 4)
fmt.Println(ret)
func maxPoint(arr []int, num int) int
arrLen := len(arr)
L := 0
R := 0
for R < arrLen
if arr[R]-arr[L] > num
L++
R++
return R - L
执行结果如下:
以上是关于2021-05-01:给定一个有序数组arr,代表坐落在X轴上的点。给定一个正数K,代表绳子的长度。返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。的主要内容,如果未能解决你的问题,请参考以下文章