Leetcode problem 1590

Run Settings
LanguagePython
Language Version
Run Command
def minSubarray(nums, p): """ :type nums: List[int] :type p: int :rtype: int """ sum_arr = sum(nums) arr_len = len(nums) subarr_sum_dict = dict() possible_subarr = [] if sum_arr % p == 0: return 0 for i in range(0, arr_len): for j in range(i+1, arr_len): if (i, j-1) in subarr_sum_dict: tmp = sum_arr - (subarr_sum_dict[(i, j-1)] + nums[j]) else: subarr_sum_dict[(i, j-1)] = sum(nums[i:j-1]) tmp2 = subarr_sum_dict[(i, j-1)] + nums[j] tmp = sum_arr - tmp2 subarr_sum_dict[(i, j)] = subarr_sum_dict[(i, j-1)] + nums[j] if tmp % p == 0: print(tmp) print(nums[i:j]) possible_subarr.append((i, j)) print(possible_subarr) min_len = arr_len for i, j in possible_subarr: if (j - i) + 1 < min_len: min_len = (j - i) + 1 if min_len == arr_len: return -1 else: return min_len # nums = [3,1,4,2], p = 6 # nums = [6,3,5,2], p = 9 # nums = [1,2,3], p = 7 nums = [6,3,5,2] p = 9 print(minSubarray(nums, p))
Editor Settings
Theme
Key bindings
Full width
Lines