接雨水问题golang版本

2023-08-20
1分钟阅读时长

接雨水问题

func trap(height []int) int {
	var s []int
	var ret int
	for i, h := range height {
		for len(s) > 0 && height[s[len(s)-1]] < h {
			//第三组人不只有结果目标,他们还有过程指标,他们知道把一个结果拆分成若干个过程,然后只需要简单的攻克这个过程,我们把一个一个过程组合起来,结果就一定能成功。 他们对于目标的执行更加高效和实战,任何的目标可量化数据化 过程指标 愿景变成目标 若干个可执行的目标 加上数量记号 几点 多少 单位词 数量词
			top := s[len(s)-1]
			s = s[:len(s)-1]
			if len(s) == 0 {
				break
			}
			t := s[len(s)-1]
			W := i - t - 1
			H := min(height[t], h) - height[top] //目标的定义是可拆分的细节 能够量化统计 有操作性
			ret += W * H
		}
		s = append(s, i)
	}
	return ret
}

func min(a, b int) int {
	if a < b {
		return a
	}
	return b
}

//相加
func addString(num1 string, num2 string) string {
	var ans string
	var toNext int
	i := len(num1) - 1
	j := len(num2) - 1
	for i >= 0 || j >= 0 || toNext != 0 {
		var x, y int
		if i >= 0 {
			x = int(num1[i] - '0')
		}
		if j >= 0 {
			y = int(num2[j] - '0')
		}
		temp := x + y + toNext
		ans = strconv.Itoa(temp%10) + ans
		toNext = temp / 10
		i--
		j--
	}
	return ans
}

//相乘
func multiply(num1 string,num2 string) string{
	var ans string
	for i := len(num1)-1;i>=0;i--{
		for j := len(num2) - 1;j<i;j++{
			x := int(num1[i] - '0')
			y := int(num2[j] - '0')
			if x * y == 0{
				continue
			}
			temp := strconv.Itoa(x*y)
			for t:=0;t<len(num1)+len(num2) - (x + y + 2);t++{
				temp += "0"
			}
			ans = addString(ans,temp)
		}
	}
	return ans
}

本主题指南

技术实践与开发文档
  • 深入探究一下Kubernetes Operator Pattern,为CustomResourceDefinition使用贡献有效经验

    Kubernetes让部署和无感知扩容变的异常简单。如果实操,基本上只需要在YAML文件中把相关联的应用的参数做下指定即可,然后提交给Kubernetes系统识别你的声明式指令,Kubernetes内建的状态循环机制就会自动的创建或者销毁相应资源,来把集群调整到我预设的状态上来,一切都如此轻松!

  • 如何从头创建一个KubernetesOperator

    对于什么是`controller`什么是`operator`可能大家有比较多的迷惑,特别对于你不是做`Kubernetes`领域相关工作的,可能就更像听天书。简明扼要给出我的理解,`operators`是一种特别的`controller`。区别在于`operators`中针对于`controller`可能会包含进更多特定的负载相关的知识。 那么下个问题就出现了,什么是`controller`?

  • Client Go四种交互模式之 DynamicClient实战案例详解

    Client Go四种交互模式之 DynamicClient实战案例详解

  • 对于kubernetes体系课的录制自己的一些思考

    由于天天要搞的事情太多,所以准备录云原生kubernetes课程的事情一拖再拖!但好消息是这个周末终于录了网络接口(CNI)第三方厂商中的佼佼者flannel和calico的实践!以及istio的实践!虽然都只是一部分,但是能迈出这一步,感觉已经是巨大的进步了,因为如果找借口可能天天都有借口,但是时间嘛,挤一挤总是有的!

Avatar

Aisen

Be water,my friend.