码迷,mamicode.com
首页 > 编程语言 > 详细

算法99---丰收(网易笔试)--二分查找

时间:2019-08-03 15:02:11      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:color   input   img   else   lis   pre   spl   mamicode   put   

技术图片

技术图片

思路:

加和+二分查找

 

 代码:

n = int(input())
ns = list(map(int, input().split()))
m = int(input())
q = list(map(int, input().split()))
 
for i in range(1, n):
    ns[i] += ns[i-1]
for i in q:
    l, r =0, n-1
    while l < r:
        mid = (l +r) >> 1
        if ns[mid] < i:
            l = mid + 1
        else:
            r = mid
    print(r + 1)

 

算法99---丰收(网易笔试)--二分查找

标签:color   input   img   else   lis   pre   spl   mamicode   put   

原文地址:https://www.cnblogs.com/Lee-yl/p/11294581.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!