码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 2024华为OD机试真题-伐木工-(C++/Python)-C卷D卷-200分


    2024华为OD机试题库-(C卷+D卷)-(JAVA、Python、C++)

    题目描述

    一根X米长的树木,伐木工切割成不同长度的木材后进行交易,交易价格为每根木头长度的乘积。规定切割后的每根木头长度都为正整数;也可以不切割,直接拿整根树木进行交易。

    请问伐木工如何尽量少的切割,才能使收益最大化?

    输入描述

    木材的长度(X ≤ 50)

    输出描述

    输出最优收益时的各个树木长度,以空格分隔,按升序排列

    用例1
    输入 10
    输出 3 3 4
    说明

    一根2米长的树木,伐木工不切割,为2 * 1,收益最大为2

    一根4米长的树木,伐木工不需要切割为2 * 2,省去切割成本,直接整根树木交易,为4 * 1,收益最大为4

    一根5米长的树木,伐木工切割为2 * 3,收益最大为6

    一根10米长的树木,伐木工可以切割方式一:3,4,3,也可以切割为方式二:3,2,2,3,但方式二伐木工多切割一次,增加切割成本却买了一样的价格,因此并不是最优收益。

    题目解析

    本题可以使用动态规划求解。根据用例中的说明,我们用dp[i]表示长度为i的木材可获得的最大收益,如果i分为j和i-j两部分时收益最大,dp[j]和dp[i-j]可以用之前得出的结果,而不用重新计算,因此可以得到状态转移公式:

    dp[i]=max(dp[i], dp[j]*dp[i-j]),在求dp[i]时,需要依次遍历各种切分方法并计算的收益。在比较出更大的收益时,或者是,收益相同,但切割的份数更少时,要记录此时的分割状态。

    代码
    c++
    #include 
  • 相关阅读:
    软件设计模式系列之九——桥接模式
    【python]python内置函数——ord()/chr()/unichr()字符串与ASCII或UNICODE之间相互转换
    学生信息管理系统 图形用户界面(GUI) java 实现对数据库的操作 数据库用的mysql
    纵目科技冲刺科创板上市:拟募资20亿元,股东阵容强大
    【OpenCV】 车辆识别 运动目标检测
    讲述为什么要学习Adobe XD以及 Adobe XD下载安装
    Vue+springboot美发美容化妆品产品商城系统
    好像知道的人不多?Spring容器关闭执行销毁方法有几种,看完MQ源码我才知道SmartLifecycle最快
    【GPT‑4o】完整教程:LORA微调LLaMA3并结合RAG和Agent技术实现Text2SQL任务
    Gof23设计模式之责任链模式
  • 原文地址:https://blog.csdn.net/goldarmour/article/details/139692210
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号