给定n个正整数组成的数组,求平均数正好等于 k 的最长连续子数组的长度。参考:https://juejin.cn/post/7281444213693808697#heading-5进行python实现def find_max_length(nums, k): prefix_sum = 0 hashmap = {0: 0} # 记录前缀和的索引位置 max_length = 0 for i in range(len(nums)): prefix_sum += nums[i] target = prefix_sum - k if target in hashmap: length = i - hashmap[target] + 1 max_length = max(max_length, length) if prefix_sum not in hashmap: hashmap[prefix_sum] = i + 1 if max_length == 0: return -1 else: return max_length# 读取输入n, k = map(int, input().split())nums = list(map(int, input().split()))# 转换为相加为0的数组解决问题nums = [num - k for num in nums]result = find_max_length(nums, 0)print(result)