银行账户资金的平分问题?


有23个帐户,拥有不同资金(可随意设置),现要求将23个帐户资金平分,规则如下:
从帐户中转出金额,得扣转出金额的6%手续费
输入帐户,得扣转入金额的5%手续费。

例如:
从A帐户中取出1000元,则要从1000中扣除6%金额,实得金额为940元。
再将940元转入B帐户,则要扣除940 * 5%手续费。

问你最后均分的金额是多少,总共花费多少手续费?寻一个高效的算法

c java php

Inazami 12 years ago

选定其中一个账户作为汇总账户,将剩下22人的钱全部回到这个账户,汇总后的钱平分(这里的平分,汇总用户不会扣除入账费用,所以要好好算一下)后再分别打到22个账户中。

我的方法能实现完全平分,算法复杂度也不高,0(n)。但是转入转出的金额较大,扣除的手续费就会比较多,不能保证最终平分到23个用户的金额是所有方法中最多的。

一辈子撸管 answered 12 years ago

Your Answer