[蓝桥杯 2025 省 B] 画展布置

要使L值越小,我们容易知道,只有连续几个相邻的数才会使L最小。

因此,我们第一步应该把输入的数据排序,这里直接调用一个sort排序即可。

排序完成之后,我们只需要从左右依次选择m个进行计算即可。

英文有了从小到大的排序,所以 B[i+1]>B[i] ,因此,这里的绝对值符号可以直接去除,而 m 个数相加也可以进行简化。

由此可以得知, 代码相对较简单,代码如下:

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 1e5 + 10;
int B[N];
signed main()
{
    int n, m;
    cin >> n >> m;
    for (int i = 0; i < n; i++)
    {
        cin >> B[i];
    }
    //排序
    sort(B, B + n);
    int ans = 1e10;
    //计算和,每次取最小的
    for (int i = 0; i < n - m + 1; i++)
    {
        ans = min(ans,B[i + m - 1] * B[i + m - 1] - B[i] * B[i]);
    }
    cout << ans;
}
相关推荐
2401_8920709818 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
yuzhuanhei18 小时前
Visual Studio 配置C++opencv
c++·学习·visual studio
小O的算法实验室18 小时前
2026年ASOC,基于深度强化学习的无人机三维复杂环境分层自适应导航规划方法,深度解析+性能实测
算法·无人机·论文复现·智能算法·智能算法改进
‎ദ്ദിᵔ.˛.ᵔ₎19 小时前
LIST 的相关知识
数据结构·list
一轮弯弯的明月19 小时前
贝尔数求集合划分方案总数
java·笔记·蓝桥杯·学习心得
不爱吃炸鸡柳19 小时前
C++ STL list 超详细解析:从接口使用到模拟实现
开发语言·c++·list
M--Y19 小时前
Redis常用数据类型
数据结构·数据库·redis
十五年专注C++开发19 小时前
RTTR: 一款MIT 协议开源的 C++ 运行时反射库
开发语言·c++·反射
‎ദ്ദിᵔ.˛.ᵔ₎19 小时前
STL 栈 队列
开发语言·c++
2401_8920709820 小时前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象