2019独角兽企业重金招聘Python工程师标准>>>

1.渴婴问题:
    有一个非常渴的、聪明的小婴儿,她可能得到的东西包括一杯水、一桶牛奶、多罐不同种类的果汁、许多不同的装在瓶子或罐子中的苏打水,即婴儿可得到n种不同的饮料。根据以前关于这n种饮料的不同体验,此婴儿知道这其中某些饮料更合自己的胃口,因此,婴儿采取如下方法为每一种饮料赋予一个满意度值:饮用1盎司第i种饮料,对它作出相对评价,将一个数值si作为满意度赋予第i种饮料。
    通常,这个婴儿都会尽量饮用具有最大满意度值的饮料来最大限度地满足她解渴地需要,但是不幸地是:具有最大满意度值地饮料有时并没有足够地量来满足此婴儿解渴地需要。设ai是第i种饮料地总量,而此婴儿需要t盎司的饮料来解渴,那么,需要饮用n种不同的饮料各多少量才能满足婴儿解渴的需求呢?

解法:对si从大到小排序,每次减去相应的ai值(notice:最后一个不一定喝完),统计喝的数量.

2.装箱问题:
    有一艘大船准备用来装载货物。所有待装载货物都装在货箱中,且所有货箱的大小都一样,但货箱的重量都各不相同。设第i种货箱的重量为wi(1<=i<=n ),而货船的最大载重量为c,我们的目标是在货船上装入最多的货物。

解法:对wi从小到大排序,每次把wi最小的放在船上,统计放的个数.

3.找零钱问题:
    一个小孩买了价值少于1元的糖,并将1元钱交给了售货员。售货员希望用数目最少的硬币找给小孩。假设提供了数目不限的面值为50分、10分、5分、2分、1分的硬币。

解法:比如96分 -> 
96-50=46(<50); 50,1张
46-10=36(>=10),36-10=26(>=10),26-10=16(>=10),16-10=6(<10); 10,4张
6-5=1(<2); 5,1张
1-1=0; 1,1张
=>50分1张,10分4张,5分1张,2分0张,1分1张.

转载于:https://my.oschina.net/pandacub/blog/141504

1.一些 贪心算法 的简单思维题:相关推荐

  1. 贪心算法很简单:跳跃游戏

    题目描述: 定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] 输出: ...

  2. cake 简单思维题

    cake 题目抽象:有n个人或m个人参加派对.问至少将圆形蛋糕切成多少块(每块不一定相等)使得无论是n个人还是m个人都能平分. 思路:以4和6为例. 1 #include <iostream&g ...

  3. Codeforces Round #540 (Div. 3)--A. Water Buying(简单思维题-有点坑)

    A. Water Buying 题目链接http://codeforces.com/problemset/problem/1118/A time limit per test:1 second mem ...

  4. C#LeetCode刷题-贪心算法

    贪心算法篇 # 题名 刷题 通过率 难度 44 通配符匹配 17.8% 困难 45 跳跃游戏 II 25.5% 困难 55 跳跃游戏 30.6% 中等 122 买卖股票的最佳时机 II C#LeetC ...

  5. 贪心算法及Jump Game系列题详解

    本博文所有的代码均可在 https://github.com/Hongze-Wang/LeetCode_Java https://github.com/Hongze-Wang/LeetCode_Pyt ...

  6. 拜托,别再问我贪心算法了!

    来自:码海 前言 上篇一文学会动态规划解题技巧 被不少号转载了,其中发现有一位读者提了一个疑惑,在求三角形最短路径和时,能否用贪心算法求解.所以本文打算对贪心算法进行简单地介绍,介绍完之后我们再来看看 ...

  7. 基础算法 -- 贪心算法

    题目描述: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能同时参与多笔交易( ...

  8. 贪心算法(leetcode分类解题,C++代码详细注释)

    贪心算法 前言 455.分发饼干 135.分发糖果 435.无重叠区间 605.种花问题 452.用最小数量的箭引爆气球 763.划分字母区间 122. 买卖股票的最佳时机 II 376. 摆动序列 ...

  9. 贪心算法设计作业调度c语言,贪心算法 - 数据结构与算法教程 - C语言网

    1.简介 贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解. 贪心算法不是对所有问题都能得到整体最优 ...

最新文章

  1. 手画:mvc三层框架生图
  2. 创业者周鸿祎前传(西安交大时期)
  3. Android8.0后版本的分区变化
  4. JavaScript排序算法——插入排序算法
  5. java 在线支付_java如何实现在线支付讲解
  6. 三步彻底清除电脑的mysql
  7. 用c#实现 catia插件speos的部分功能
  8. 生成drl文件_Allegro生成Gerber文件的方法
  9. android qq 目录,手机qq存储路径在哪可以找到
  10. js正则判断域名和IP的端口路径是否正确
  11. 计算机考完试后感想,期中考试后的感想(精选10篇)
  12. G003-186-07
  13. 本地mysql拒绝jdbc连接失败_jdbc连接MySQL数据库的诡异异常 java.net.ConnectException: 拒绝连接...
  14. 手把手教你通过SpringBoot实现邮箱注册码验证
  15. 关于单边账的解释及解决
  16. USART与UART的区别,单工,半双工和全双工的区别
  17. Qt编写项目作品26-一维码二维码解析及生成
  18. 科技新品 | 佳能18英寸4K/HDR专业监视器;小派科技Pimax Reality系列VR设备;三星半导体3款车用芯片方案...
  19. 数据结构(二)栈和队列练习题
  20. Vue 组件封装之 Search 搜索

热门文章

  1. CYQ.Data.ProjectTool 项目配置工具发布(包源码)
  2. mac os 快捷键
  3. Linux如何编译安装源码包软件
  4. 外包 银行数字签名U盘的用法
  5. android 线程 wait notify
  6. 【Flutter学习】组件学习之目录
  7. 使用粘性布局实现tab滑动后置顶
  8. Android进阶知识:事件分发与滑动冲突(一)
  9. 石家庄地铁售票系统源码及截图(结对作业)
  10. Confluence 6 配置 HTTP 超时设置