Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,914 questions

51,847 answers

573 users

How to find the maximum length of a sublist having a sum equal to K in Python

1 Answer

0 votes
def maximum_length_sublist_sum_equal_to_k(lst, k):
    dict = {}
    sum = 0
    length = 0
    end_index = -1
 
    dict[0] = -1
 
    size = len(lst)
    
    for i in range(size):
        sum += lst[i]
 
        if sum not in dict:
            dict[sum] = i

        if sum - k in dict and length < i - dict[sum - k]:
            length = i - dict[sum - k]
            end_index = i
 
    print("start index = ", end_index - length + 1, ", end index = ", end_index)
    
    return length


lst = [1, -1, 5, -2, -3, 2, 3, 3]
k = 3;
         
# 1, -1, 5, -2 = 3 (4)
# 5, -2 = 3 (2)
# -2, -3, 2, 3, 3 = 3 (5)
 
print(maximum_length_sublist_sum_equal_to_k(lst, k))
 
 

 
'''
run:
 
start index =  3 , end index =  7
5
 
'''

 



answered Feb 24, 2024 by avibootz
...