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,代表绳子的长度。返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。的主要内容,如果未能解决你的问题,请参考以下文章
2022-06-04:给定一个数字n,表示一开始有编号1~n的树木,列成一条直线, 给定一个有序数组arr,表示现在哪些树已经没了,arr[i]一定在[1,n]范围, 给定一个数字m,表示你可以补种多
2021-07-27:给定一个数组arr,长度为N,arr中的值只有1,2,3三种。arr[i] == 1,代表汉诺塔问题中,从上往下第i个圆盘目前在左;arr[i] == 2,代表汉诺塔问题中,从上