python标准库--sys - 系统相关功能在算法比赛的应用
目录
1. 快速输入输出
2. 调整递归深度限制
1. 快速输入输出
算法比赛中,大量数据的读写可能成为瓶颈。sys.stdin
和sys.stdout
比内置的input()
和print()
效率更高。
import sys# 读取多行输入(每行一个整数)
n = int(sys.stdin.readline()) # 读取第一行作为整数
data = list(map(int, sys.stdin.readline().split())) # 读取一行中的多个整数# 快速输出(避免频繁调用print)
output = []
for num in data:output.append(str(num * 2)) # 处理数据
sys.stdout.write('\n'.join(output) + '\n') # 一次性输出
2. 调整递归深度限制
某些算法(如深度优先搜索)可能触发 Python 默认的递归深度限制。通过sys.setrecursionlimit()
可以临时提高限制。
import sys
sys.setrecursionlimit(1 << 25) # 设置更大的递归深度(例如33554432)def dfs(node):# 递归处理passdfs(0)