首页 > ACM题库 > HDU-杭电 > hdu 2250 贪心的孩子待解决[解题报告]C++
2014
01-04

hdu 2250 贪心的孩子待解决[解题报告]C++

贪心的孩子

问题描述 :

“想不出来”是一个贪心的孩子,他天天想着怎么让自己变的有钱,有一天他想到去做生意,他想用自己身上唯一的n元钱去买a物品,再用a物品按一定的比例换b物品。。。。。最后再把东西卖了。
比如Sample里的数据,想不出来先用10000买了12000个1物品,再用1物品换到了15600个2物品,再将2物品卖了得到21840元钱。
可是,想不出来不知道怎样才可以得到最多的钱,所以他请你来帮帮他。(任务物品可以分割为很细小的一块,同时,每个物品或钱最多只能进行一次买卖,特别请注意:一旦将物品转换为钱,则交易就结束了)

输入:

每组数据第一行输入一个n(n <= 10000)(表示想不出来一开始有的钱数)和一个m(m <= 10000)(表示接下来有m组兑换关系)
接下来有m组数据a , b , c。
0<= a, b <= 1000000, 0 <= c <= 2;
输入过程中当a或b为0时表示为钱;
注意:输入中没给出的兑换关系表示不能兑换,兑换过程中物品都将全部兑换,兑换过程中不会出现循环。

输出:

每组数据第一行输入一个n(n <= 10000)(表示想不出来一开始有的钱数)和一个m(m <= 10000)(表示接下来有m组兑换关系)
接下来有m组数据a , b , c。
0<= a, b <= 1000000, 0 <= c <= 2;
输入过程中当a或b为0时表示为钱;
注意:输入中没给出的兑换关系表示不能兑换,兑换过程中物品都将全部兑换,兑换过程中不会出现循环。

样例输入:

10000 3
0 1 1.2
1 2 1.3
2 0 1.4

样例输出:

21840.00


  1. 第二个方法挺不错。NewHead代表新的头节点,通过递归找到最后一个节点之后,就把这个节点赋给NewHead,然后一直返回返回,中途这个值是没有变化的,一边返回一边把相应的指针方向颠倒,最后结束时返回新的头节点到主函数。

  2. This write-up presents the gentle in which we can notice the fact. this is extremely wonderful one and gives in depth info.

  3. 您没有考虑 树的根节点是负数的情况, 若树的根节点是个很大的负数,那么就要考虑过不过另外一边子树了

  4. [email protected]

  5. 问题3是不是应该为1/4 .因为截取的三段,无论是否能组成三角形, x, y-x ,1-y,都应大于0,所以 x<y,基础应该是一个大三角形。小三角是大三角的 1/4.

  6. 第一句可以忽略不计了吧。从第二句开始分析,说明这个花色下的所有牌都会在其它里面出现,那么还剩下♠️和♦️。第三句,可以排除2和7,因为在两种花色里有。现在是第四句,因为♠️还剩下多个,只有是♦️B才能知道答案。

  7. 博主您好,这是一个内容十分优秀的博客,而且界面也非常漂亮。但是为什么博客的响应速度这么慢,虽然博客的主机在国外,但是我开启VPN还是经常响应很久,再者打开某些页面经常会出现数据库连接出错的提示