uva10827 - Maximum sum on a torus(圆环上的最大和)
来源:互联网 发布:js classname事件 编辑:程序博客网 时间:2024/06/04 21:54
和108题意差不多。
就是这个题的原始数据不是存在矩阵里面。而是存在环图中。
什么叫做环图呢,就是对于n*n的矩阵,若某个时间走到最后一列,再次向右走的话,此时会走到第一列,就好像是滚动数组一样。
思路很108一样,只不过把为了满足环图的特点。我们需要把图放大4倍。。
代码如下:
#include <cstdio>#define M 330int n, a[M][M];int main (){ int cas, t, sum, max; scanf("%d",&cas); while(cas--) { scanf("%d",&n); for(int i = 1; i <= n; i++) for(int j = 1; j <= n; j++) { scanf("%d",&t); a[i][j] = a[n+i][j] = a[i][n+j] = a[n+i][n+j] = t; a[i][j]+=a[i-1][j]; a[i][n+j]=a[i][j]; } for(int i = n+1; i <= 2*n; i++) for(int j = 1; j <= n; j++) { a[i][j] += a[i-1][j]; a[i][j+n]=a[i][j]; } max = 0; for(int i = 1; i <= n; i++) for(int j = i; j-i < n; j++) for(int k = 1; k <= n; k++) { sum = 0; for(int g = k; g-k < n; g++) { if(sum<0) sum = 0; sum+=a[j][g]-a[i-1][g]; if(sum>max) max = sum; } } printf("%d\n",max); } return 0;}
- uva10827 - Maximum sum on a torus(圆环上的最大和)
- uva10827-Maximum sum on a torus(矩阵最大和的变形)
- UVA10827 - Maximum sum on a torus
- uva10827 - Maximum sum on a torus
- Maximum sum on a torus uva10827
- uva10827 - Maximum sum on a torus(最大子矩阵和变形)
- [动态规划]UVA10827 - Maximum sum on a torus
- UVa 10827 Maximum sum on a torus (贪心&矩阵环中的最大子矩阵和)
- UVA 10827 Maximum sum on a torus(环面上的最大子矩阵和)
- Maximum sum on a torus
- uva 10827 - Maximum sum on a torus(连续最大和问题)
- UVA - 10827 Maximum sum on a torus(dp最大子矩阵和)
- UVA 10827 Maximum sum on a torus 可循环的最大连续子矩阵
- UVA - 10827 Maximum sum on a torus 求循环矩阵的最大子矩阵
- UVa 10827 - Maximum sum on a torus
- UVa 10827 - Maximum sum on a torus
- 10827Maximum sum on a torus
- uva 10827 - Maximum sum on a torus
- 过程和函数
- 通用的多线程处理模型
- SQL语句---from 和where 查询条件的优先级
- 屏幕取词技术实现原理与关键源码
- POJ 2195 Going Home
- uva10827 - Maximum sum on a torus(圆环上的最大和)
- 黑马程序员_异常
- T-SQL逻辑查询处理的各个阶段
- C++ queue应用之电路布线(迷宫的最短路径)
- java语言程序设计 14.2 comparable
- mysql数据库复习加强
- 微软2013年暑期实习招聘笔试回忆[转载]
- 正则表达式(二)
- Warning: stream_socket_server() has been disabled for security reasons