假币找零赚赔逻辑问题【数学建模】
假币找零问题模型
问题描述
这类问题可以用统一的变量模型来解决,无论题目中的数字怎么变,都适用。
问题流程如下:
- 老板有意见成本(进价)为C CC商品,售价为P PP(通常P > 0 P > 0P>0);
- 一位顾客前来购买商品,支付了面额为F FF的货币,且F ≥ P F \ge PF≥P(这样才需要找零);
- 老板没有零钱,用这张面额为F FF的货币向邻居换了总面额同样为F FF的货币;
- 老板找零后,顾客拿走商品离开;
- 此后,邻居发现老板交换的货币是假币,要求老板赔偿,老板又赔偿了价值为F FF的货币。
问老板最终亏损多少。
问题求解
题目中常出现“向邻居换零钱,之后又赔给邻居”的情节。邻居先给老板F FF元真零钱,最后老板又赔给邻居F FF元真钱,邻居不亏不赚。这个环节对整个交易的净影响为0 00。
因此,可以直接去掉邻居,把过程简化为:
老板自己本来就有足够的零钱。他收下顾客的假币(价值为0 00),然后自己找出F − P F - PF−P元真钱给顾客,并把商品给了顾客。
简化后,从老板的角度看,他付出了两样东西:
- 一件商品,其真实成本为C CC
- 找零给顾客的现金F − P F - PF−P
这两样东西都被顾客用一张价值为0 00的假钱换走了,所以老板的实际经济损失就是两者之和。即
Loss = C + ( F − P ) = C + F − P \boxed{\text{Loss} = C + (F - P) = C + F - P}Loss=C+(F−P)=C+F−P
特殊情况
- 若P = C P = CP=C(成本等于售价),则亏损= C + F − C = F = C + F - C = F=C+F−C=F,正好是假币面额。
- 若F = P F = PF=P(不用找零),则亏损= C + 0 = C = C + 0 = C=C+0=C,损失就是白送一件商品。
图解法
用流量图表现如下:
去除价值为0 00的假钱流量,并抵消相同的输入输出流量后,可得
这和简化场景是相同的。
易错点
- 重复计算赔邻居的F FF:有人会列C + ( F − P ) + F C + (F-P) + FC+(F−P)+F,然后得到C + 2 F − P C + 2F - PC+2F−P,这就把邻居的过桥资金当成了额外损失。实际上,赔邻居的F FF中有P PP元是邻居之前给的找零剩下的,老板只自掏腰包补了F − P F-PF−P元,这个数刚好等于给顾客的找零。
- 用售价P PP代替成本C CC(把没赚到的利润当成损失):商品的实际损失是C CC,不是P PP,必须用成本。除非题目问的是“比正常交易多亏多少”,否则标准问题只算实际资产损失,此时商品的实际损失为P PP。
问题扩展
两个陌生人(顾客A和顾客B)都去老板家买衣服,衣服成本18元,标价21元,顾客A掏了100元假币买,老板找不开,拿着这100元假币问顾客B换开钱(换121元零钱的同时卖出商品),顾客A的拿着衣服和找回的79元(均为真钱)走了。然后顾客B也拿着衣服和老板给的100元假钱走了,老板后来发现顾客B给的钱里有50元假钱,顾客A也发现自己手里的100元是假币,请问三人各赚多少,各亏多少?
问题来自赔赚 假币 智力题_51CTO博客_100元假钱的智力题,但原题找零逻辑存在些许问题,这里做了修改。
按流量图解法绘制图形:
删除假币流量
可以轻松看出(+ ++表示亏钱,− -−表示赚钱)
{ Loss A = − 98 Loss BOSS = + 46 Loss B = + 52 \begin{cases} \text{Loss}_\text{A} &= -98\\ \text{Loss}_\text{BOSS} &= +46\\ \text{Loss}_\text{B} &= +52 \end{cases}⎩⎨⎧LossALossBOSSLossB=−98=+46=+52
