poj1050最大子矩阵和

poj1050最大子矩阵和

大家好,又见面了,我是全栈君。

这篇是看了别人的报告写的,就当是屡屡思路好了.

题目大意。给定一个n阶矩阵(方阵),每一个元素中存在一个数字.任务就是求出一个最大的子矩阵使得矩阵元素之间的和是最大的.

n=100;

1.矩阵A[m][n]的和能够直接 sum+=A[i][j] ( i = 0 to n-1 j=0 to n-1); 还能够求出第i列的和p[i],再将所在列加起来,(当然行是同理的).

2.因此所选的矩阵的行k能够枚举(0<=k<=n-1),此时能够现将列加起来,然后找到这些列中连续最大和就可以.这就是选出的矩阵最大和.

3.在全部矩阵中选出最大和的一个。

/*Source Code
Problem: 1050		User: 
Memory: 388K		Time: 32MS
Language: GCC		Result: Accepted

Source Code*/

    #include <stdio.h>
    int max(int a,int b){
            return a>b?

a:b; } int main(){ int i,j,k,n; int ans=-0xfffffff; int A[101][101]={0}; scanf("%d",&n); for(i=0;i<n;i++){ for(j=0;j<n;j++){ scanf("%d",&A[i][j]); } } for(i=0;i<n;i++){ for(j=0;j<n;j++){ int add[101]={0},d[101]={0}; for(k=0;k<n;k++){ int l; for(l=i;l<=j;l++){ add[k]+=A[l][k]; } } d[0]=add[0]; ans=max(ans,d[0]); for(k=0;k<n;k++){ d[k]=d[k-1]>0?d[k-1]+add[k]:add[k]; ans=max(ans,d[k]); } } } printf("%d\n",ans); return 0; }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115265.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • centos7安装nginx1.16.1

    centos7安装nginx1.16.1centos7安装nginx1.16.1一.安装依赖库二.安装四.测试五.配置1.配置nginx为web容器2.配置nginx为代理服务器一.安装依赖库这里使用yum安装,如果是刚安装好的centos7,没有配置yum的话,点击此处yum-yinstallgccyum-yinstallpcrepcre-develyum-yinstallzlibzlib-develyum-yinstallopensslopenssl-devel二.安装wget下载ngin

    2022年6月4日
    50
  • cnpm 安装命令

    cnpm 安装命令  npm包管理器是每一位js开发者的得力助手,利用npm我们不仅能下载到别人写好的组件,也可以快速搭建我们的项目……但对于国内的开发者,npm的下载速度有是实在是令人捉鸡,因此国内的许多开发者都会使用更加快速的cnpm简单代替npm。打开控制台,输入命令npminstall-gcnpm–registry=https://registry.npm.taobao.org耐心等待一下安装即可此后我们再使用npm下载包的时候,就可以将npm命令替换为cnpm,下载下来的内容完全一样,但是速度

    2022年10月15日
    0
  • bzero用法_pzero是什么意思

    bzero用法_pzero是什么意思bzero用法linux下串口编程使用到了bzero函数原型:externvoidbzero(void*s,intn);用法:#include  功能:置字节字符串s的前n个字节为零且包括‘\0’。  说明:bzero无返回值。  2#include 3#include 4

    2022年10月13日
    0
  • 最新Android基础入门教程目录(完结版)

    最新Android基础入门教程目录(完结版)第一章:环境搭建与开发相关(已完结10/10)https://blog.csdn.net/coder_pig/article/details/50000773Android基础入门教程——1.1背景相关与系统架构分析Android基础入门教程——1.2开发环境搭建Android基础入门教程——1.2.1使用Eclipse+ADT+SDK开发AndroidAPPAndroid基础入…

    2022年6月12日
    26
  • xpath定位随机元素之starts-with的用法

    xpath定位随机元素之starts-with的用法

    2021年5月24日
    117
  • java grouping,介绍 Java 8 groupingBy Collector

    java grouping,介绍 Java 8 groupingBy Collector介绍Java8groupingByCollector本文我们探讨下Java8groupingByCollector,通过不同的示例进行详细讲解。GroupingByCollectorJava8StreamAPI提供了声明方式处理流数据。static工厂方法Collectors.groupingBy()和Collectors.groupingByConcurrent()…

    2022年8月20日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号