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

2025/5/16

第一题

A. 例题4.1.2 潜水

题目描述

在马其顿王国的ohide湖里举行了一次潜水比赛。

其中一个项目是从高山上跳下水,再潜水达到终点。

这是一个团体项目,一支队伍由n人组成。在潜水时必须使用氧气瓶,但是每只队伍只有一个氧气瓶。

最多两人同时使用一个氧气瓶,但此时两人必须同步游泳,因此两人达到终点的时间等于较慢的一个人单独游到终点所需要的时间。

好在大家都很友好,因此任何两个人后都愿意一起游水。安排一种潜水的策略,使得最后一名选手尽量早的达到终点。

输入格式

第一行:队伍的人数n(<=1000)。

下面是n行,每行1个数,分别是n个潜水所用的时间ti(<=1000)。

输出格式

1个整数,表示最少用的时间。

样例数据

input


31 3 4

Copy

output


8{4+1+3}氧气瓶还必须潜水送回来^-^

Copy

数据规模与约定

时间限制:1 \text {s}1s

空间限制:256 \text {MB}256MB

这道题一开始的时候,我想的是就是让最小值的那个人和每一个人依次来,去。

他是通过嗯但是通过思考其实可以发现,因为把如果把杨西平送到那边,那么那边还剩人数一定的,所以说呢我们其实可以让最大的和第二大的一起过去,然后呢再让一个小时过来。

代码如下,

#include<bits/stdc++.h>
using namespace std;
int n,sum,a[1010]={}; 
int main(){
    freopen("D.in","r",stdin);
    freopen("D.out","w",stdout);
    cin>>n;
    for(int i=1;i<=n;i++)
    cin>>a[i];
    sort(a+1,a+1+n);
    while(n>=4)
    {
        int x1=a[1]*2+a[n]+a[n-1];
        int x2=a[1]+a[2]*2+a[n];
        sum+=min(x1,x2);
        n-=2; 
    }
    if(n==3)sum+=a[1]+a[2]+a[3];
    else sum+=a[2];
    cout<<sum;
    return 0;
}

 

http://www.xdnf.cn/news/6568.html

相关文章:

  • 费曼技巧及提高计划
  • Font导致内存泄漏问题排查记录
  • Android 中 打开文件选择器(ACTION_OPEN_DOCUMENT )
  • 利用边缘计算和工业计算机实现智能视频分析
  • JAVAfx项目总结 算法题
  • 《AI大模型应知应会100篇》第65篇:基于大模型的文档问答系统实现
  • Linux 系统切换国内镜像源教程
  • ChatGPT到Claude全适配:跨模型Prompt高级设计规范与迁移技巧
  • 面向SDV的在环测试深度解析——仿真中间件SIL KIT应用篇
  • 职坐标AIoT技能培训课程实战解析
  • python报错:必须实现所有abstract方法原因及解决方案
  • 如何更改远程桌面连接的默认端口?附外网访问内网计算机方法
  • 数学复习笔记 13
  • polarctf-web-[rce1]
  • P1439 【模板】最长公共子序列
  • 第五部分:第五节 - Express 路由与中间件进阶:厨房的分工与异常处理
  • “多维像素”可赋能具身智能非凡感知力——昱感微参加2025松山湖中国IC创新高峰论坛
  • 2026《数据结构》考研复习笔记四(绪论)
  • [AI算法] LLM训练-构建transformers custom model
  • 安卓中0dp和match_parent区别
  • Verilog HDL 语言整理
  • Vue.js教学第二章:Vue实例创建与核心选项全解析
  • 「Mac畅玩AIGC与多模态40」开发篇35 - 用 Python 开发服务对接 SearxNG 与本地知识库
  • C++(16):“”符号
  • 【ARM】MDK如何将变量存储到指定内存地址
  • GESP2025年3月认证C++二级( 第三部分编程题(1)等差矩阵)
  • conda创建环境常用命令(个人用)
  • 优雅使用Gunicorn进程管理FastAPI
  • 硬件厂商的MIB文档详解 | 如何查询OID? | MIB Browser实战指南-优雅草卓伊凡
  • 基于MATLAB-GUI图形界面的数字图像处理