子数组的最小值之和-c语言
2023-09-14 09:06:53 时间
子数组的最小值之和
给定一个整数数组 arr,找到 min(b) 的总和,其中 b 的范围为 arr 的每个(连续)子数组。
由于答案可能很大,因此 返回答案模 10^9 + 7 。
示例 1:
输入:arr = [3,1,2,4]
输出:17
解释:
子数组为 [3],[1],[2],[4],[3,1],[1,2],[2,4],[3,1,2],[1,2,4],[3,1,2,4]。
最小值为 3,1,2,4,1,1,2,1,1,1,和为 17。
示例 2:
输入:arr = [11,81,94,43,3]
输出:444
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/sum-of-subarray-minimums
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解题代码如下:
#define size 1000000007
int sumSubarrayMins(int* arr, int arrSize){
int min;
int i;
int j;
long long sum=0;
for(i=0;i<arrSize;i++){
int min=arr[i];
sum=sum+min;
for(j=i+1;j<arrSize;j++){
if(arr[j]<min){
min=arr[j];
}
sum=sum+min;
sum=sum%size;
}
}
return sum;
}
相关文章
- c语言表白程序代码
- php多语言判断
- Go语言字符串和数组的相互转换
- paip.c语言gtk开发环境CodeBlocks /QT建立最佳实践
- Python语言学习之打印输出那些事:python输出图表和各种吊炸天的字符串或图画、版权声明(如README.md)等之详细攻略
- 【C语言】详解 C 语言获取数组长度
- 1899. 合并若干三元组以形成目标三元组-c语言-贪心算法+标记数组
- 快照数组-c语言
- 《C++语言基础》实践參考——数组作数据成员
- Clickhouse建表语法、视图语法、数据表DDL(数据定义语言)、数据DML(数据操作语言)
- Go语言入门——数组、切片和映射
- Go语言自学系列 | golang数组
- 387集Go语言核心编程培训视频教材整理 | 数组和切片
- 数字IC设计——数组、存储器(Memory)的定义及Verilog语言实现(二)(存储器的读、取、及初始化赋值)
- 【c语言】调整数组使奇数所有都位于偶数前面
- go语言笔记——数组长度不可变,但是元素值是可变的!!!
- go语言的defer语句
- 关于c语言malloc之后没有memset导致的free error问题
- 第十三届蓝桥杯国赛 C++ C 组 Java A 组 C 组 Python C 组 E 题——斐波那契数组(三语言代码AC)
- Go语言笔记----基础语法
- c语言数组和指针相关知识点
- c语言 删除数组中的一个(某个)元素