当前位置: 首页 > article >正文

3194. 最小元素和最大元素的最小平均值 简单

你有一个初始为空的浮点数数组 averages。另给你一个包含 n 个整数的数组 nums,其中 n 为偶数。

你需要重复以下步骤 n / 2 次:

  • 从 nums 中移除 最小 的元素 minElement 和 最大 的元素 maxElement
  • 将 (minElement + maxElement) / 2 加入到 averages 中。

返回 averages 中的 最小 元素。

示例 1:

输入: nums = [7,8,3,4,15,13,4,1]

输出: 5.5

示例 2:

输入: nums = [1,9,8,3,10,5]

输出: 5.5

分析:将 nums 数组排序后,从两端开始向中间依次计算平均值,最后输出最小的即可。

int cmp(const void *a,const void *b)
{
    int *aa=(int*)a;
    int *bb=(int *)b;
    return *aa-*bb>0?1:0;
}

double minimumAverage(int* nums, int numsSize) {
    double ans=100;
    qsort(nums,numsSize,sizeof(int),cmp);//快速排序
    int l=0,r=numsSize-1;
    while(l<r)
    {
        ans=fmin((nums[l]+nums[r])*1.0/2.0,ans);
        l++,r--;
    }
    return ans;
}


http://www.kler.cn/news/361688.html

相关文章:

  • 安装vue发生异常: idealTree:nodejs: sill idealTree buildDeps
  • 【算法】归并排序概念及例题运用
  • Java可变参数
  • vivado 采用 SSI 器件进行设计
  • 软件测试与软件缺陷的基础知识
  • 使用SpringBoot自定义注解+AOP+redisson锁来实现防接口幂等性重复提交
  • CEEMDAN +组合预测模型(Transformer - BiLSTM + ARIMA)
  • React核心技术解析:以“智能购物助手”洞悉奥秘
  • Unity/C#使用EPPlus读取和写入Excel
  • 如何开启华为交换机 http
  • 【DSP】TI 微控制器和处理器的IDE安装CCSTUDIO
  • 023_net基于ASP.NET的图书借阅系统的设计与实现2024_281bfi3e
  • C# WinForms 仿Toast弹出实现
  • Premiere与EDIUS区别于相同点
  • Spring的底层原理
  • Linux:Linux中第一个小程序_进度条
  • Springboot 使用EasyExcel导出Excel文件
  • 英语写作中“有前景的”promising的用法
  • Python 第七节 魔法圆阵
  • PCL 最小点数约束的体素滤波(永久免费版)
  • 利用DeepFlow解决APISIX故障诊断中的方向偏差问题
  • 2024 “源鲁杯“ Round[1] web部分
  • 无线网卡知识的学习-- mac80211主要代码流程
  • Eclipse 软件:配置 JDBC、连接 MySQL 数据库、导入 jar 包
  • PDT 数据集:首个基于无人机的高精密度树木病虫害目标检测数据集
  • 大数据学习---快速了解clickhouse数据库