题目:
给定一个数组,一个int代表绳子长度,求身子能覆盖最多点
分析
绳子长度等于long,long长度的绳子最多能盖住几个点 5-1=4,能盖住1-5闭区间
窗口,贪心算法
package main
import(
"fmt"
)
// list := []int{1, 2, 2, 3, 4, 5, 5,7,7, 8,9}
//绳子长度等于long,long长度的绳子最多能盖住几个点 5-1=4,能盖住1-5闭区间
func maxcover(list []int,long int){
max :=0
right:=0
// length:=0
for k,_:=range(list){
right=k+1
//遍历每一个节点,看能盖住几个值,eft固定,right往右到不能再往右
for right
right+=1
}
list[k]=right-k
//go的切片没有求max方法,这里用max记录最大数字最后输出
if list[k]>max{
max= list[k]
}
}
fmt.Println(list)
fmt.Println(max)
}
func main(){
list := []int{1,1,1, 2, 2, 3, 4, 5, 5,7,7, 8,9,9,9,9,9}
maxcover(list,4)
}



