Codility每周一课:P3.3 TapeEquilibrium

本文介绍了Codility的P3.3 TapeEquilibrium问题,目标是找到数组A中分割点P,使得|(A[0] + ... + A[P-1]) - (A[P] + ... + A[N-1])|的差值最小。通过分析,发现差值变化与位置P的元素关系密切,给出了解题思路和Python3的解决方案,最小差值为1。
摘要由CSDN通过智能技术生成

113208.png

P3. 3 TapeEquilibrium
Minimize the value |(A[0] + … + A[P-1]) - (A[P] + … + A[N-1])|

  • P3.3 寻找最小差
    寻找|(A[0] + … + A[P-1]) - (A[P] + … + A[N-1])|的最小差

由N个整数组成的非空数组A。对于整数P,0<P<N,将该数组分为两部分:A[0]、A[1]、…、A[P-1]和A[P]、A[P+1]、……、A[N-1]。 两部分的差定义为:
|(A[0]+A[1]+、…、+A[P-1])-****(A[P]+A[P+1]+、……、+A[N-1])|

例如,考虑数组:A[0]=3,A[1]=1,A[2]=2,A[3]=4,A[4]=3,给定4个不同的P值:
P=1,差=|3−10|=7
P=2,差=|4−9|=5
P=3,差=|6−7|=1
P=4,差=|10−3|=7

编写函数:


                
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AnFany

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值