Keyerror 1和字典大小在迭代过程中发生变化

问题描述

问题:在下面的编辑器中完成nonDivisibleSubset函数。它应该返回一个整数,表示满足条件的最长子集的长度。

nonDivisibleSubset具有以下参数:

S:整数数组 k:整数

 def nonDivisibleSubset(k,s):
        # Write your code here
        modulo = {}
        for i in range(len(s)):
            rem = s[i] % k
            if rem in modulo:
                modulo[rem] += 1
            else:
                modulo[rem] = 1
        count = 0
    
        track = modulo
    
        for key in modulo:
            pair = k - 1 - key
            if (k - 1 - key) in modulo and (k - 1 - key) in track and key in track:
                if modulo[key] > modulo[pair]:
                    count += modulo[key]
                else:
                    count += modulo[pair]
    
            else:
                count += modulo[key]
                track.pop(key)
                continue
    
            track.pop(key)
            track.pop(pair)
    
        return count    

错误:

  1. KeyError:1

2.RuntimeError:字典在迭代过程中更改了大小

我该如何解决? 我在哪里弄错了?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...