【PAT甲级A1125】 Chain the Ropes (25分)(c++)

2023-11-10

1125 Chain the Ropes (25分)

作者:CHEN, Yue
单位:浙江大学
代码长度限制:16 KB
时间限制:200 ms
内存限制:64 MB

Given some segments of rope, you are supposed to chain them into one rope. Each time you may only fold two segments into loops and chain them into one piece, as shown by the figure. The resulting chain will be treated as another segment of rope and can be folded again. After each chaining, the lengths of the original two segments will be halved.

在这里插入图片描述

Your job is to make the longest possible rope out of N given segments.

Input Specification:
Each input file contains one test case. For each case, the first line gives a positive integer N (2≤N≤10​4​​ ). Then N positive integer lengths of the segments are given in the next line, separated by spaces. All the integers are no more than 10​4.

Output Specification:
For each case, print in a line the length of the longest possible rope that can be made by the given segments. The result must be rounded to the nearest integer that is no greater than the maximum length.

Sample Input:

8
10 15 12 3 4 13 1 15

Sample Output:

14

题意:

将两根绳子对折和在一起能获得一根新的绳子,新绳子同样可以再对折和其他绳子合成一根,求将所给的绳子和到一起的最大长度。

思路:

新绳子的长度是两根绳子对半分的和,每加一根绳子都要将之前的绳子再对半分以下,所以要让长绳子对半分的竟可能少,那就从小到大开始并绳子。

参考代码:

#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int main() {
    int n, sum = 0;
    scanf("%d", &n);
    vector<double> v(n);
    for (int i = 0; i < n; i++)
        scanf("%lf", &v[i]);
    sort(v.begin(), v.end());
    sum = v[0];
    for (int i = 1; i < n; i++) {
        sum = (sum + v[i]) / 2;
    }
    printf("%d", sum);
    return 0;
}

如有错误,欢迎指正

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【PAT甲级A1125】 Chain the Ropes (25分)(c++) 的相关文章

随机推荐

  • 径向基神经网络(RBF)回归预测MATLAB实现超详细

    在机械学习算法的过程中 我们常用到一种神经网络就是径向基神经网络 这是一种使用径向基函数作为激活函数的人工神经网络 这种神经网络也有很多用途 比如时间序列预测 数据分类以及回归预测等等 今天主要讲解径向基神经网络在MATLAB的实现过程 对
  • 003_linux驱动之_file_operations函数

    一 解析file operations函数 解析002 linux驱动之 register chrdev注册字符设备中的问题 二 file operations结构原型 使用举例 三 从上面的原型可以看出file operations函数有
  • 不走索引的情况

    1 条件字段选择性弱 查出的结果集较大 不走索引 2 where条件等号两边字段类型不同 不走索引 3 优化器分析的统计信息陈旧也可能导致不走索引 4 索引字段 is null 不走索引 5 对于count 当索引字段有not null约束
  • nn.Conv2d——二维卷积运算解读

    PyTorch学习笔记 nn Conv2d 二维卷积运算解读 nn Conv2d 二维卷积运算 代码案例 一般用法 输出卷积运算的参数 填充方式 零填充 镜像填充 复制填充 循环填充 官方文档 nn Conv2d 二维卷积运算 torch
  • Could not load 'clearsilver-jni' java.library.path = out/host/linux-x86/lib make: *** [out/target/common/docs/api-stubs-timestam

    Could not load clearsilver jni java library path out host linux x86 lib make out target common docs api stubs timestamp
  • 关于C++代码中中文字符的错误或者乱码的解决办法

    在文件头加入下面这段内容 pragmaexecution character set utf 8 如果还不行就同时用Notepad 等一些工具转换成utf 8的编码 如不出意外已经解决问题了
  • Halcon卡尺测量

    halcon之机器视觉测量 卡尺测量 read image ImageModel image png get image size ImageModel Width Height dev open window 0 0 Width Heig
  • 内网信息收集-入门概念

    内网信息收集 在内网渗透测试环境中 有很多设备和防护软件 例如Bit9 ArcSight Mandiant 等 它们通过收集目标内网的信息 洞察内网网络拓扑结构 找出内网中最薄弱的环节 信息收集的深度 直接关系到内网渗透测试的成败 1 内网
  • 树莓派4b刷入openwrt做旁路由

    你需要准备 树莓派4b主板 1 tf卡 16GB 1 tf卡读卡器 Win32DiskImager软件 1 首先下载符合树莓派4b的openwrt固件 由于目前官方暂未提供 此处需要自行编译 2 以管理员运行方式打开Win32DiskIma
  • 1.认识多态 2.多态调用成员的特点 3.多态优势与弊端

    1 多态前提是有继承关系 并且有方法的重写 2 创建多态对象 Fu f new Zi 等号左边父 右边子 1 多态调用成员变量 调用的就是 Fu f new Zi Fu的 2 多态调用成员方法 调用的就是 被覆盖掉的父类 也就是子类 1 多
  • 通过终端上传文件至github

    1 打开终端 config自己的name和email git config global user name 使用者名称 git config global user email 邮箱 2 建立本地git仓库 cd到你的本地项目根目录 就是
  • python3 open()函数调用方法简单示例

    python3 open 函数调用简介 Python open 方法用于打开一个文件 并返回文件对象 在对文件进行处理过程都需要使用到这个函数 如果该文件无法被打开 会抛出 OSError 注意 使用 open 方法一定要保证关闭文件对象
  • Windows 下使用 grub2 制作美观的维护U盘

    本来是想用 grub4dos 的 但是那个的界面比较难看 于是就找到了 grub 就有了这篇文章 这篇文章主要针对 BIOS UEFI 可能不适用 预览 这是最终效果 实用工具子菜单 工具提取自老毛桃PE 当然也可以自己从其他地方找 文件管
  • iframe加载页面,onload函数不执行的问题

    前一阵子 做了个小工具 其中用到了一个隐藏的iframe结果出现了一个奇怪的现象 iframe加载的页面本来有一个onload来进行初始化的 结果这个onload函数指定的初始化代码并没有被执行 同时使用document getElemen
  • 线代【解方程组】--猴博士爱讲课

    第六课 解方程组 1 6判断方程组解的情况 判断方程组的解的情况 齐次唯一解例题 非齐次无解例题 非齐次有解例题 2 6解方程组 解方程组 共有五步 求增广矩阵的秩 变换矩阵 R 3 就变换前三行 前三列 为单位矩阵的形式 根据 得到的矩阵
  • 如何让HFSS仿真结果跟随当前optimization选中的参数组变化

    如何让HFSS仿真结果跟随当前optimization选中的参数组变化 我们经常使用HFSS优化参数 可以得到多组结果 一般来说 我们希望我们的图表显示当前这一组参数对应的S参数 这样当我们在optimization中应用不同组参数时 可以
  • 概率论考点之方差及数学期望

    如题 2019年10月 分析 由方差的性质 详见4 D 2x 1 D 2x 0 4D x 10 所以D x 2 5 答案选B 在此之前 不知什么是方差 1 什么是方差呢 可以说是建立在数学期望基础上的概念 什么是数学期望呢 详见扩展 关于数
  • VScode插件视图显示本地文件目录树

    前言 最近工作中需要用到vscode开发插件 作为一个没用使过vscode开发插件的小白 发现官网的教程还是很详细的 另外还发现了一篇适合小白的博文 VScode插件开发全攻略 小铭同学 大家也可以看看 写得很好 写这篇博文的目的是为了整理
  • weblogic 12c下jxls导出excel报错Could not initialize class org.apache.poi.xssf.usermodel.XSSFVMLDrawing...

    周一 开发反馈weblogic 12c下jxls导出excel报错 公司环境和UAT环境均报错 看日志如下 2016 06 08 09 16 55 825 ERROR org jxls util TransformerFactory cre
  • 【PAT甲级A1125】 Chain the Ropes (25分)(c++)

    1125 Chain the Ropes 25分 作者 CHEN Yue 单位 浙江大学 代码长度限制 16 KB 时间限制 200 ms 内存限制 64 MB Given some segments of rope you are sup