首页 > 解决方案 > sys.stdin.readline() vs input():它们需要的内存有区别吗?

问题描述

我正在解决关于hackerearth 的问题。问题是我的解决方案出现“超出内存限制”错误。当我将所有的替换input()sys.stdin.readline()内存限制时,超出错误就消失了。我想知道为什么会这样。谁能解释这种差异背后的原因?

编辑:使用读取输入的代码stdin.readline()

n, m, k = map(int, stdin.readline().split())

edges = []
mst = []

parent = [i for i in range(n)]
size = [1] * n

for i in range(m):
    x, y, w= map(int, stdin.readline().split())
    edges.append([w, x - 1, y - 1])

edges.sort()

使用读取输入的代码input()

n, m, k = map(int, input().split())

edges = []
mst = []

parent = [i for i in range(n)]
size = [1] * n

for i in range(m):
    x, y, w= map(int, input().split())
    edges.append([w, x - 1, y - 1])

edges.sort()

标签: pythonpython-3.xinputstdin

解决方案


推荐阅读