uva 10074 Take the Land
来源:互联网 发布:历年人口普查数据 编辑:程序博客网 时间:2024/05/16 19:48
ps:博主为朱老师学生
这是一道和uva 108类似的题,值得注意的是最大空地初始为0
#include <cstdlib>#include <cstdio>#include <cstring>//#define Tint i,j,k,N,M;int Max;int p;int num1[200][200],num3[200][200];int temp[200];void inital(){ memset(num1,0,sizeof(num1)); memset(num3,0,sizeof(num3)); memset(temp,0,sizeof(temp));}int main(){#ifdef Tfreopen("in.txt","r",stdin);freopen("out.txt","w",stdout);#endif // T while(~scanf("%d %d",&N,&M)&&(N||M)) { inital(); for(i = 1; i<=N; i++) { for(j=1; j<=M; j++) { scanf("%d",&num1[i][j]); //num2[i][j]=num2[i-1][j] + num1[i][j]; num3[i][j]=num3[i][j-1] + num3[i-1][j] + num1[i][j] - num3[i-1][j-1]; } } Max=0; for(i = 1; i <= N; i++) { for(k=0; k<i; k++) { p = 0; for(j = 1; j<=M; j++) { if(p==0) { temp[j] = num3[i][j] - num3[k][j]; if(temp[j] - temp[j-1]) p = 0; else { p= p+i-k; if(p> Max) Max = p; } } else { temp[j] = num3[i][j] - num3[k][j]; if(temp[j]-temp[j-1]) p = 0; else { p= p+i-k; if(p> Max) Max = p; } } } } } printf("%d\n",Max); }return 0;}
1 0
- UVa 10074 - Take the Land
- UVa:10074 Take the Land
- UVa 10074 - Take the Land
- uva 10074 Take the Land
- uva 10074 Take the Land
- UVA 10074 Take the Land(最大子矩阵和变形)
- Take the Land - UVa 10074 变形最大子矩阵和
- UVA 10074 Take the Land dp/暴力+剪枝
- UVa 10074 Take the Land (转化思想&最大子矩阵和)
- uva 10499 - The Land of Justice
- uva-10499 - The Land of Justice
- UVa 10499 - The Land of Justice
- UVa 10499 - The Land of Justice
- UVA 10499 The Land of Justice
- uva 10499 - The Land of Justice
- uva 10499 The Land of Justice
- UVA 10499 The Land of Justice
- UVa 10499 - The Land of Justice
- 如何在你的应用中正确使用Context
- Android之Sqlite,SQLiteOpenHelper的使用
- 转:Android zxing(上)
- IOS学习笔记(五)之正式协议
- uva 108 Maximum Sum
- uva 10074 Take the Land
- 关系型数据库工作原理-归并排序(翻译自Coding-Geek文章)
- ios学习笔记(六)之回调函数
- 第4周 C语言及程序设计提高例程-20 经典:查找的艺术
- Matlab-----让同一个坐标轴上的两个字母,一个斜体,一个正体
- 三和韓長庚 著 易學原理總論 對讀 001_020
- 屏幕适配
- Matlab----大图中画子图的方法
- 大学生活之我见