Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何处理python中过大的输入?_Python_Performance_Runtime Error_Time Complexity_Large Files - Fatal编程技术网

如何处理python中过大的输入?

如何处理python中过大的输入?,python,performance,runtime-error,time-complexity,large-files,Python,Performance,Runtime Error,Time Complexity,Large Files,我是一个初学者,我在练习一个关于hackerrank的问题。 我编写这段代码是为了解决一个问题,该问题对于大型输入超时: K = int(input()) roomnos = input().split() setroomnos = set(roomnos) for r in setroomnos: if roomnos.count(r) == 1: print(r) break 法官对所有测试案例

我是一个初学者,我在练习一个关于hackerrank的问题。 我编写这段代码是为了解决一个问题,该问题对于大型输入超时:

    K = int(input())
    roomnos = input().split()
    setroomnos = set(roomnos)
    for r in setroomnos:
        if roomnos.count(r) == 1:
            print(r)
            break
法官对所有测试案例都接受了下一个测试

    K = int(input())
    roomnos = [int(i) for i in input().split()]
    setroomnos = set(roomnos)
    c = (K * sum(setroomnos) - sum(roomnos)) // (K - 1)
    print(c)
你能解释一下为什么第一个在大输入时超时,而第二个工作正常吗 PS:基本操作是找到一个在列表中只出现一次的no,而不是出现K次的其他no。您的第一个解决方案使用O(n)
表示
,其中包含一个O(n)
计数
,导致O(n^2)复杂性。您的第二个示例没有以这种方式嵌套操作,O(n)复杂性也是如此