不知道为什么指针越界? def Pre_sum(sum,z): for g in range(1, m + 1): for h in range(1, n + 1): sum[g][h] = sum[g - 1][h] + sum[g][h - 1] - sum[g - 1][h - 1] + z[g][h] return sum # 从左上角到右下角 def Submatrix(sum,x1,y1,x2,y2): return sum[x2][y2]-sum[x1-1][y2]-sum[x2][y1-1]+sum[x1-1][y1-1] m,n,k = map(int, input().split()) c=0 z=[[0]*(n+1) for q in range(m+1)] sum=[[0]*(n+1) for q in range(m+1)] for p in range(1,m+1): z[p]=[0]+list(map(int, input().split())) sum=Pre_sum(sum,z) # 左上角 for x1 in range(1,m+1): for y1 in range(1,n+1): # 右下角 for x2 in (x1,m+1): for y2 in (y1,n+1): if Submatrix(sum,x1,y1,x2,y2)<=k: c+=1 print(c)
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复