今天中午看人发了一个小题目,兴趣突来,就算了算,

先看题目:

王师傅是卖鞋的,一双鞋进价30元甩卖20元,顾客来买鞋给了张50,王师傅没零钱,于是找邻居换了50元。

事后邻居发现钱是假的,王师傅又赔了邻居50。请问王师傅一共亏了多少?

(这道题目不简单,100个人有99人会算错)

整理一下数据流:

// 正常交易
【大骗子】给【王师傅】假50
【王师傅】给【好邻居】假50
【好邻居】给【王师傅】真50
【王师傅】给【大骗子】真30 + 鞋子
// 秋后算账
【好邻居】给【王师傅】假50
【王师傅】给【好邻居】真50

单独看骗子

【大骗子】给【王师傅】假50

【王师傅】给【大骗子】真30 + 鞋子

单独看邻居

【王师傅】给【好邻居】假50

【好邻居】给【王师傅】真50

【好邻居】给【王师傅】假50

【王师傅】给【好邻居】真50

回到问题根本,王师傅

王师傅到底亏了多少?

看数据流啊,

支出:

【王师傅】给【好邻居】假50

【王师傅】给【大骗子】真30 + 鞋子

【王师傅】给【好邻居】真50

收益:

【大骗子】给【王师傅】假50

【好邻居】给【王师傅】真50

【好邻居】给【王师傅】假50

总结,

收了两次假50 ,也支出一次,最终还是在自己手里,

支出80+鞋子,收益 50 ,合并:支出30加鞋子

也就是:  拿30现金加鞋子    换    一张 假50


方式二:能量守恒
【好邻居】打酱油的,不赚不赔
【大骗子】用假50   换   一双标价30卖20的鞋子+30元找零

【王师傅】与骗子相反,用鞋子+30找零   换   一张假50

结题。

王师傅卖鞋进价30元甩卖20元,问亏多少的问题解析相关推荐

  1. 用10元,20元,50元三种币值的纸币凑出1000元,一共有多少种组合(C++实现)三种思路,两种实现

    今天做了中金所的笔试题,被一道题卡住了.题目意思是: 用10元,20元,50元三种币值的纸币凑出1000元,一共有多少种组合? 当时一眼看上去分析了一下,以为是背包问题,类似于爬楼梯,于是直接带了爬楼 ...

  2. 要将五张100元的大钞票,换成等值的50元,20元,10元,5元一张的小钞票,每种面值至少1张,编程输出所有可能的换法,程序应适当考虑减少重复次数

    源程序: 要将五张100元的大钞票,换成等值的50元,20元,10元,5元一张的小钞票,要求换成30张小钞票,每种面值的至少一张,编程输出所有可能的换法,程序应适当考虑减少重复次数. #include ...

  3. 小明拿了一百块钱买了三块钱的东西,老板找他97块钱, 请问,老板有多少种找法(1元,五元,十元,20元,50元)

    public class Test08{ /** 小明拿了一百块钱买了三块钱的东西,老板找他97块钱,请问,老板有多少种找法(1元,五元,十元,20元,50元)*/public static void ...

  4. 1元,5元,10元,20元,50元、100元面值人民币组合给定x元的问题

    问题描述 目前市面上的纸币主要有1元,5元,10元,20元,50元.100元六种,如果要买一件商品x元,有多少种货币组成方式? 解答 我们先进行如下变量的定义: dp[i][sum] = 用前 i 种 ...

  5. 用1元,2元,5元,10元,20元,50元组合成100元

    100元换零钱1元,2元,5元,10元,20元,50元有多少种组合方案 一道笔试题,当时就懵逼了... 找到递推公式之后,其实也不难 F(N,M)=F(N,M-1)+F(N-VAL[M],M) F(N ...

  6. 算法笔试题:1元,5元,10元,20元,50元、100元面值人民币组合给定x元的问题

    最近有一道笔试题引起了小伙伴们的激烈讨论. 参考博客 作为算法菜鸟非常感谢大神的分析和举例.博客地址 问题描述 目前市面上的纸币主要有1元,5元,10元,20元,50元.100元六种,如果要买一件商品 ...

  7. C语言一百块钱换成十元20元,把100元人民币换成50元、20元、10元的纸币。计算出有多少种换法?...

    把100元人民币换成50元.20元.10元的纸币.计算出有多少种换法?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 把 ...

  8. 100块钱兑换成10元、20元、50元(Java)

    public static void main(String[] args) {//变量c表示50元,变量b表示20元,变量a表示10元int a,b,c,i = 0;System.out.print ...

  9. 用1元,2元,5元,10元,20元,50元和10元的纸币组成200元,共有多少种情况

    http://blog.csdn.net/mathe/archive/2006/08/31/1147756.aspx http://topic.csdn.net/u/20070202/23/65f55 ...

最新文章

  1. 使用phpqrcode生成二维码时候显示不正常,有一个小方块
  2. 收藏!史上最全的30个生物实验技术及原理
  3. [css] 如何让背景图片固定不随滚动条滚动
  4. java输出a-z_有1-26个数字和a-z字母,用Java多线程实现先输出2和数字再输出2个字
  5. PAT乙级(1003 我要通过!)
  6. php分类程序,php 无限分类程序
  7. Kotlin 我的第一个kotlin程序【Android Studio】
  8. 【思维、费马小定理】CQXYM Count Permutations
  9. 抓包与发流软件与网络诊断
  10. 计算机1级b知识点,初中信息技术等级考试知识点
  11. 【经典面试题】实现平方根函数sqrt
  12. 【kotlin】基本语法when的使用,类似于java中的switch,但是又青出于蓝而胜于蓝
  13. 从零开始设计一个共识算法——一场没有硝烟的战争
  14. Maven详细入门及教学视频推荐
  15. 一个阿里小二“改写”了《阿里巴巴与四十大盗》 | 悦读
  16. 计算机基础频率单位转换,hz换算(hz与秒单位换算)
  17. U9单据打印模板自定义扩展字段显示名称
  18. latex 参考文献 网站
  19. 右键添加[显示、隐藏文件]
  20. java实现线程安全的三种方式

热门文章

  1. 【闪电侠学netty】第3章 Netty开发环境配置
  2. 798 - 背包问题VII - LintCode
  3. 医学图像分割制作标签数据
  4. “墨刀”---移动端--一卡通 原型图
  5. Java类型转换中valueOf方法和parseInt方法的区别
  6. python三种方法开根号(穷举法、二分法、牛顿拉夫逊法)
  7. 给你一个人生哲学的故事
  8. Linux忘记将任务放后台 不能终止程序 将前台任务放在后台继续运行 (nohup, setsid, , disown)
  9. C语言仿HashMap完成记忆化搜索
  10. 5种很牛的两位数乘法速算方法