作者motai (啥昵称??)
看板C_Sharp
标题Re: [问题] 叠乌龟问题
时间Mon Nov 3 08:06:40 2008
※ 引述《motai (啥昵称??)》之铭言:
: 按照每只乌龟的(载重-体重) 所算出的值
: 由上到下的放:
: 最小
: 最大
: 第二小
: 第二大
: 第三小
: 第三大
: .
: .
: .
: 试看看有没有例子用这方法反而不行的 @ @"
换另依种方法:
有n只乌龟,算出所有乌龟的(载重-体重),分别为T1~Tn
( Tn=第n只乌龟的 载重-体重 )
算出T1~Tn的平均值,再算出所有T1~Tn跟这平均值的"距离"
"距离"越远的摆最上面~~~~~
这方法应该比较正确...
: ※ 引述《hatasum (我很可爱)》之铭言:
: : 恩...题目很简单 但是我始终想不出来要怎麽用程式写出来...XD
: : 假设每只乌龟都有两个数据 自己的体重 和 自己最多能乘载的重量
: : 现在有100组乌龟 每只乌龟都有编号(0 1 2...99)
: : 去作堆叠
: : 请用程式找出 最多只乌龟的排法(如果最多只乌龟排法有很多种 那就都要列出来)
: : Output: 最多叠n只 排列顺序为xxxxxxx
: : =============================================================================
: : 想了很久...XD但是始终找不到逻辑
: : 我之前的一个错误做法,大家可以参考
: : =========================================================
: : 第一只放"最大乘载量"的乌龟
: : 他的上面那只放"max(第一只乘载量-第二只重量)"的那一只
: : =========================================================
: : 我用这逻辑去写 也写出来了 但是发现问题一大堆!!!
: : ex:
: : 假设用这逻辑 我找出编号顺序为 1=>2=>3=>4(也就是编号1是这data中乘载最大的)
: : 假设经过这1234的排列後 最上面现在只能再放15g以下的乌龟
: : 假设编号1体重10g 可载重100g
: : 编号2+3+4 体重80g 但因为乘载关系 4的上面只能再放15g
: : 现在有第5只乌龟 重量15g 可载重90g
: : Q1: 1234 这时候也有另一个选择了 5234 (最大乘载量放第一个不一定对了!!)
: : Q2:
: : 选择1234 4的上面只能再放15g 而5重量20g 所以不能放
: : 选择5234 4的上面只能再放10g 但是1的重量刚好可以放 所以就变成 52341.....
: : ANS:一开始的逻辑是错的...= =最下面到底要放谁???
: : ============================================================================
: : 目前我还在想 听说有人想出来了XD
: : 但是我总觉得这题目真的可以做出来吗...??
: : ^^"如果有什麽结果我会再po文的 也欢迎大家想想这题目 讨论看看
--
This is SPARTA!
我只是要土和水
拿来种种花啊!!! \固
囧//☆︿异╲
█ ☆ \ by aokman
████████◤ \\ ◥██aokman███████████████
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.225.161.247