C++ 语言 爱与愁的心痛

爱与愁的心痛

题目背景

(本道题目隐藏了两首歌名,找找看哪~~~)

《爱与愁的故事第一弹·heartache》第一章。

《我为歌狂》当中伍思凯神曲《舞月光》居然没赢给萨顶顶,爱与愁大神心痛啊~~~而且最近还有一些令人伤心的事情,都让人心痛(最近真的很烦哈)......

题目描述

最近有 n 个不爽的事,每句话都有一个正整数刺痛值(心理承受力极差)。爱与愁大神想知道连续 m 个刺痛值的和的最小值是多少,但是由于业务繁忙,爱与愁大神只好请你编个程序告诉他。

输入格式

第一行有两个用空格隔开的整数,分别代表 nm

2 到第 (n + 1) 行,每行一个整数,第 (i + 1) 行的整数 a_i 代表第 i 件事的刺痛值 a_i

输出格式

输出一行一个整数,表示连续 m 个刺痛值的和的最小值是多少。

样例 #1

样例输入 #1

```

8 3

1

4

7

3

1

2

4

3

```

样例输出 #1

```

6

```

提示

数据规模与约定

  • 对于 30\\% 的数据,保证 n \\leq 20

  • 对于 60\\% 的数据,保证 n \\leq 100

  • 对于 90\\% 的数据,保证 n \\leq 10\^3

  • 对于 100\\% 的数据,保证 0 \\leq m \\leq n \\leq 3 \\times 10\^31 \\leq a_i \\leq 100

cpp 复制代码
#include<iostream>
using namespace std;
#define MAX 3000+5
int a[MAX];
int b[MAX];	  
int main() {

	int  n, m;
	cin >> n >> m;
	int min_ = 0;
	for (int i = 0; i < n; i++) { //录入数据
		cin >> a[i];
		min_ += a[i];
	}
	if (m != n)	//如果m与n一直,就是所有元素的和
		for (int i = 0; i < n - m; i++) { //一共几组数

			for (int j = 0; j < m; j++)	 //这个循环求第几组的和
				b[i] += a[i + j];

			min_ = min(min_, b[i]);

		}
	printf("%d\n", min_);
	return 0;
}
相关推荐
奔跑吧 android5 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 2】【通过一个案例属性list、hlist、rbtree、xarray数据结构使用】
linux·数据结构·list·kernel·rbtree·hlist·xarray
汉克老师5 小时前
第十四届蓝桥杯青少组C++选拔赛[2023.2.12]第二部分编程题(5、机甲战士)
c++·算法·蓝桥杯·01背包·蓝桥杯c++·c++蓝桥杯
Mr_Xuhhh6 小时前
项目需求分析(2)
c++·算法·leetcode·log4j
默默无名的大学生6 小时前
数据结构—顺序表
数据结构·windows
c++bug6 小时前
六级第一关——下楼梯
算法
PAK向日葵6 小时前
【C/C++】面试官:手写一个memmove,要求性能尽可能高
c语言·c++·面试
Morri36 小时前
[Java恶补day53] 45. 跳跃游戏Ⅱ
java·算法·leetcode
林木辛6 小时前
LeetCode热题 15.三数之和(双指针)
算法·leetcode·双指针
AndrewHZ7 小时前
【3D算法技术】blender中,在曲面上如何进行贴图?
算法·3d·blender·贴图·三维建模·三维重建·pcg
Jared_devin7 小时前
二叉树算法题—— [蓝桥杯 2019 省 AB] 完全二叉树的权值
数据结构·c++·算法·职场和发展·蓝桥杯