#include <iostream.h>
void main()
{int a[10]={-3,-1,-1,0,-1,5,4,-1,3,-1},sum[10][10];//sum[i][j]存储在第i+1和第j+1个数之间的数构成的子数组的和值int max=a[0];//和值最大值int i,j,k,m=1,n=1;
//    cout<<"十个整数:"<<endl;
//    for(i=0;i<10;i++) cin>>a[i];for(i=0;i<10;i++)for(j=0;j<10;j++)sum[i][j]=0;//初始化for(i=0;i<10;i++){for(j=i+1;j<10;j++){for(k=i;k<=j;k++)sum[i][j]+=a[k];//求子数组和值
        }sum[i][i]=a[i];}for(i=0;i<10;i++){for(j=0;j<10;j++){cout<<sum[i][j]<<"\t";}}for(i=0;i<10;i++)//比较法找出最大值
    {for(j=i;j<10;j++){if(sum[i][j]>max) {max=sum[i][j];m=i+1;n=j+1;    }}            }if(m==n) cout<<"最大值是第"<<m<<"个数构成的子数组"<<endl;else cout<<"子数组和值最大的是第"<<m<<"个数到第"<<n<<"个数之间的子数组"<<endl;cout<<"最大值是:"<<max<<endl;
}

题目要求时间复杂度O(n),没有想到可行办法。

以上代码是经过探讨后选择的方案,将所有子数组枚举求和存储在sum[][]中,再对其求最大值。为了测试方便输出了sum[][]以及子数组的定位。

测试了几组数据,正、负、零都没有错误。(这里忽略故意输入非int型情况)

转载于:https://www.cnblogs.com/candy-yyn/p/3611136.html

软工随堂练 找出和值最小的子数组 尹亚男 赵静娜相关推荐

  1. 软工随堂练 找出和值最大的子矩阵 尹亚男 赵静娜

    题目:从m*n矩阵中找出元素和最大的子矩阵. 分析:此题是可看做节课求和值最大子数组的一种延伸.但如果按之前的枚举法显然太过麻烦,复杂度为O(n^4).那么有没有更好的方法呢? 我们拿出上一道题做了进 ...

  2. hdu Caocao's Bridges(无向图边双连通分量,找出权值最小的桥)

    1 /* 2 题意:给出一个无向图,去掉一条权值最小边,使这个无向图不再连同! 3 4 tm太坑了... 5 1,如果这个无向图开始就是一个非连通图,直接输出0 6 2,重边(两个节点存在多条边, 权 ...

  3. 373. Find K Pairs with Smallest Sums 找出求和和最小的k组数

    [抄题]: You are given two integer arrays nums1 and nums2 sorted in ascending order and an integer k. D ...

  4. C语言找出数组中最小的数和它的下标

    C语言找出数组中最小的数和它的下标,然后把它和数组中最前面的元素对换位置 #include <stdio.h> int main() {int A[10]={3,7,5,9,10,2,1, ...

  5. 三个变量中怎么找出中间值_一文理解神经网络中的偏差和方差

    在深度学习中,数据过拟合,欠拟合的问题很常见,先总结一下:过拟合称为高方差,欠拟合称为高偏差. 可能只看偏差,方差不是很理解,下面先来个百度百科看一下. 偏差(统计学概念) 偏差又称为表观误差,是指个 ...

  6. 找出无序数组最小的K个数(基于快排,效率高)

    快排: void QuickSort(int array[], int low, int high) { if (low >= high) //为了防止无限递归下去,导致栈溢出,设置此条件 { ...

  7. java 穷举 排列组合,JavaScript递归穷举所有排列组合并找出重复值

    null export default { data() { return { resultArr:[] } }, mounted(){ this.sss('aaba','abac'); this.s ...

  8. Excel(WPS部分功能不适用)技巧:快速找出重复值

    筛选出下两列的重复名字(重复名字可能没在一行) 步骤: (1)选中两列,点击条件格式--突出显示单元格规则--重复值 结果:

  9. 第二版:JAVA对象对比VO对象找出差异值结合swagger-ApiModel无需自定义注解

    创建历史记录表存全量 变更前后数据 CREATE TABLE `ltx_change_info` (`ID` varchar(60) NOT NULL COMMENT '主键',`CHANGE_MSG ...

最新文章

  1. 计算机基础知识考试模拟试题,计算机基础知识模拟试题及答案
  2. mysql slave 线程 简书_MySQL主从复制(Master-Slave)实践
  3. tampermonkey参数
  4. 转载:vs配置opencv教程
  5. word2vec词向量 文本分类实现(TensorFlow版,算法TextCNN)
  6. 《敏捷可执行需求说明 Scrum提炼及实现技术》—— 1.2 识别不确定性的影响
  7. undefined reference to '__gxx_personality_v0'
  8. Redis的编译安装
  9. css图片上漂浮着文字效果
  10. 【英语学习】【WOTD】remittance 释义/词源/示例
  11. MATLAB编程思想
  12. 魔乐手机管家V2.0内测版惊艳亮相--Android软件
  13. 四、ASP文件的基本格式及新建方法
  14. Excel小技巧之:如何在表格内插入水印
  15. git安装包百度网盘下载
  16. SAP PP销售预测转独立需求CODE
  17. 教程|电脑PC微信多开
  18. 迷宫问题超详解(栈实现)
  19. 儿童周成就任务全攻略
  20. 文献解读 | 单细胞转录组助力解析水稻早期花序的发育轨迹机制

热门文章

  1. 全网最具深度的三次握手、四次挥手讲解,稳进大厂
  2. 免费Java高级工程师学习资源,使用指南
  3. 【Network Security!】Banner信息收集
  4. 高cpu_实用脚本:检查高 CPU / 内存消耗进程 | Linux 中国
  5. 可通过http获取远端服务信息_微服务基础——厉害了!API网关
  6. 怎么升级浏览器_下载的chrome无法访问此网站怎么解决
  7. 小程序css中设置1rpx失效
  8. 文章内容排版对网站优化有哪些影响?
  9. Flutter retrofit:only “package“ and “asset“ schemes supported
  10. for和foreach分析