import time
import sys
start_time = time.time()
for _ in range(1000000):
line = sys.stdin.readline().strip()
sys.stdout.write(line + '\n')
end_time = time.time()
print("Time taken:", end_time - start_time)
代码
代码1
python复制代码
n, m, k = map(int, input().split())
a = []
for i in range(n):
a.append(list(map(int, input().split())))
b = []
for i in range(k):
b.append(list(map(int, input().split())))
c = [[0] * (m + 1) for i in range(n + 1)]
for i in range(1, n + 1):
for j in range(1, m + 1):
c[i][j] = c[i - 1][j] + c[i][j - 1] - c[i - 1][j - 1] + a[i - 1][j - 1]
for i in range(k):
x1, y1, x2, y2 = b[i][0], b[i][1], b[i][2], b[i][3]
print(c[x2][y2] - c[x1 - 1][y2] - c[x2][y1 - 1] + c[x1 - 1][y1 - 1])
代码2
python复制代码
import sys
# 使用 sys.stdin.readline() 读取输入
n, m, k = map(int, sys.stdin.readline().split())
a = []
for i in range(n):
a.append(list(map(int, sys.stdin.readline().split())))
b = []
for i in range(k):
b.append(list(map(int, sys.stdin.readline().split())))
# 构建前缀和数组
c = [[0] * (m + 1) for i in range(n + 1)]
for i in range(1, n + 1):
for j in range(1, m + 1):
c[i][j] = c[i - 1][j] + c[i][j - 1] - c[i - 1][j - 1] + a[i - 1][j - 1]
# 使用 sys.stdout.write() 输出结果
for i in range(k):
x1, y1, x2, y2 = b[i][0], b[i][1], b[i][2], b[i][3]
sys.stdout.write(str(c[x2][y2] - c[x1 - 1][y2] - c[x2][y1 - 1] + c[x1 - 1][y1 - 1]) + '\n')