首页 > 其他分享 >53. 最大子数组和c

53. 最大子数组和c

时间:2024-03-10 19:33:35浏览次数:23  
标签:numsSize return 最大 nums int max 53 数组 dp

int max(int i,int j){
    if(i>j) return i;
    return j;
}

int maxSubArray(int* nums, int numsSize) {
    if(numsSize==1) return nums[0];
    int* dp=(int*)malloc(sizeof(int)*numsSize);//从0到i,以nums[i]结尾的最大连续字串
    dp[0]=nums[0];
    int x=dp[0];
    for(int i=1;i<numsSize;i++){
        if(nums[i]>0){
            dp[i]=max(dp[i-1]+nums[i],nums[i]);
            if(dp[i]>x) x=dp[i];
        }else{
            dp[i]=max(dp[i-1]+nums[i],nums[i]);
            if(dp[i]>x) x=dp[i];
        }
    }
    return x;
}

结果:

标签:numsSize,return,最大,nums,int,max,53,数组,dp
From: https://www.cnblogs.com/llllmz/p/18064630

相关文章

  • 153. 寻找旋转排序数组中的最小值(中)
    目录题目题解:二分题目已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。例如,原数组nums=[0,1,2,4,5,6,7]在变化后可能得到:若旋转4次,则可以得到[4,5,6,7,0,1,2]若旋转7次,则可以得到[0,1,2,4,5,6,7]注意,数组[a[0],a[1],a[2],...,a......
  • abc160E 吃苹果能得到的最大美味度
    有A个红苹果,美味度分别为p[i];有B个青苹果,美味度分别为q[i];另外还有C个无色苹果,美味度分别为r[i],无色苹果在吃之前可以涂成红色或青色。现在要吃X个红苹果和Y个青苹果,求能吃到的最大美味度。1<=X<=A<=1E5;1<=Y<=B<=1E5;1<=C<=1E5;1<=p[i],q[i],r[i]<=1E9反悔贪心,先不考虑无色......
  • 100251. 数组中的最短非公共子字符串 暴力解法
    100251. 数组中的最短非公共子字符串 显示英文描述 我的提交返回竞赛 通过的用户数684尝试过的用户数891用户总通过次数696用户总提交次数1416题目难度Medium给你一个数组 arr ,数组中有 n 个 非空 字符串。请你求出一个长度为 n 的字符串 ans......
  • 四、数组
    第04章_数组本章专题脉络1、数组的概述1.1为什么需要数组需求分析1:需要统计某公司50个员工的工资情况,例如计算平均工资、找到最高工资等。用之前知识,首先需要声明50个变量来分别记录每位员工的工资,这样会很麻烦。因此我们可以将所有的数据全部存储到一个容器中统一管理,并......
  • abc281D 最大的能被d整除的k数之和
    题面:给定数组A[n],从中取出k个元素,使元素之和为d的倍数。求满足条件的元素之和的最大值。范围:1<=k<=n<=100;1<=d<=100;0<=A[i]<=1E9思路:记dp[i][j][k]表示前i个数里选了j个,并且元素之和除d的余数为k,按选与不选两种情况递推,这里用的刷表法。#include<bits/stdc++.h>usingnam......
  • 函数返回数组指针 看不太懂
    有三种方法1.声明一个返回数组指针的函数int(*func(inti))[10];func(inti)表示调用func函数所需要一个int类型的实参。(*func(inti))意味着我们可以对函数调用的结果执行解引操作。//意思就是函数调用的结果的是个指针。(*func(inti))[10]......
  • 2024-03-09:用go语言,我们把无限数量的栈排成一行,按从左到右的次序从 0 开始编号, 每个栈
    2024-03-09:用go语言,我们把无限数量的栈排成一行,按从左到右的次序从0开始编号,每个栈的的最大容量capacity都相同。实现一个叫「餐盘」的类DinnerPlates,DinnerPlates(intcapacity)-给出栈的最大容量capacity,voidpush(intval)将给出的正整数val推入从左往右第一个......
  • 7-9 找出不是两个数组共有的元素
    7-9找出不是两个数组共有的元素分数10作者张彤彧单位浙江大学给定两个整型数组,本题要求找出不是两者共有的元素。输入格式:输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔。输出格式:在一行中按照数字给出的顺序输出不是两数组共......
  • 代码随想录算法训练营第四十一天|01背包问题, 01背包问题—— 滚动数组,分割等和子集
    01背包问题,你该了解这些! 题目链接:46.携带研究材料(第六期模拟笔试)(kamacoder.com)思路:第一次遇到背包问题,好好记住吧。代码随想录(programmercarl.com)#include<bits/stdc++.h>usingnamespacestd;intmain(){intm,n;cin>>m>>n;vector<int>z(m);vec......
  • [NCS] nrf5340 VS Code环境搭建
    1、安装工具链(nRF5xcommandlinetools)nRF5xcommandlinetools包括Jlink驱动以及Nordic自己开发的一些命令行工具,具体包括Jlink驱动,nrfjprog,nrfutil以及mergehex等。下载链接为:https://www.nordicsemi.com/Software-and-Tools/Development-Tools/nRF-Command-Line-Tools/Do......