两数之和,两数之积

两数之和,两数之积已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。 甲问乙:”你知道是哪两个数吗?”乙说:”不知道”; 乙问甲:”你知道是哪两个数吗?”甲说:”也不知道”; 于是,乙说:”那我知道了”; 随后甲也说:”那我也知道了”; 这两个数是什么?答案:答案1:为x=1,y=6;甲知道和A=x+y=7,乙知道积B=x*y=6 答案2:为x=1,y=8;甲知道和A=

大家好,又见面了,我是你们的朋友全栈君。已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。 


甲问乙:”你知道是哪两个数吗?”乙说:”不知道”; 


乙问甲:”你知道是哪两个数吗?”甲说:”也不知道”; 


于是,乙说:”那我知道了”; 


随后甲也说:”那我也知道了”; 


这两个数是什么?




答案:


答案1:为x=1,y=6;甲知道和A=x+y=7,乙知道积B=x*y=6 


答案2:为x=1,y=8;甲知道和A=x+y=9,乙知道积B=x*y=8 


解: 


设这两个数为x,y. 


甲知道两数之和 A=x+y; 


乙知道两数之积 B=x*y; 


该题分两种情况 : 


允许重复, 有(1 <= x <= y <= 30); 


不允许重复,有(1 <= x < y <= 30); 


当不允许重复,即(1 <= x < y <= 30); 


1)由题设条件:乙不知道答案  =>  B=x*y 解不唯一  


=>  B=x*y 为非质数 




又∵ x ≠ y 


∴ B ≠ k*k (其中k∈N) 


结论(推论1): 


B=x*y 非质数且 B ≠ k*k (其中k∈N) 


即:B ∈(6,8,10,12,14,15,18,20…) 


证明过程略。 


2)由题设条件:甲不知道答案 


<=> A=x+y 解不唯一 


=> A >= 5; 


分两种情况: 


A=5,A=6时x,y有双解 


A>=7 时x,y有三重及三重以上解 


假设 A=x+y=5 


则有双解 


x1=1,y1=4; 


x2=2,y2=3 


代入公式B=x*y: 


B1=x1*y1=1*4=4;(不满足推论1,舍去) 


B2=x2*y2=2*3=6; 


得到唯一解x=2,y=3即甲知道答案。 


与题设条件:”甲不知道答案”相矛盾, 


故假设不成立,A=x+y≠5 


假设 A=x+y=6 


则有双解。 


x1=1,y1=5; 


x2=2,y2=4 


代入公式B=x*y: 


B1=x1*y1=1*5=5;(不满足推论1,舍去) 


B2=x2*y2=2*4=8; 


得到唯一解x=2,y=4 


即甲知道答案 


与题设条件:”甲不知道答案”相矛盾 


故假设不成立,A=x+y≠6 


当A>=7时 


∵ x,y的解至少存在两种满足推论1的解 


B1=x1*y1=2*(A-2) 


B2=x2*y2=3*(A-3) 


∴ 符合条件 


结论(推论2):A >= 7 


3)由题设条件:乙说”那我知道了” 


=>乙通过已知条件B=x*y及推论(1)(2)可以得出唯一解 


即: 


A=x+y, A >= 7 


B=x*y, B ∈(6,8,10,12,14,15,16,18,20…) 


1 <= x < y <= 30 


x,y存在唯一解 


当 B=6 时:有两组解 


x1=1,y1=6 


x2=2,y2=3 (∵ x2+y2=2+3=5 < 7∴不合题意,舍去) 


得到唯一解 x=1,y=6 


当 B=8 时:有两组解 


x1=1,y1=8 


x2=2,y2=4 (∵ x2+y2=2+4=6 < 7∴不合题意,舍去) 


得到唯一解 x=1,y=8 


当 B>8 时:容易证明均为多重解 


结论: 


当B=6时有唯一解 x=1,y=6当B=8时有唯一解 x=1,y=8 


4)由题设条件:甲说”那我也知道了” 


=> 甲通过已知条件A=x+y及推论(3)可以得出唯一解 


综上所述,原题所求有两组解: 


x1=1,y1=6 


x2=1,y2=8 


当x<=y时,有(1 <= x <= y <= 30); 


同理可得唯一解 x=1,y=4 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144118.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Weka算法Clusterers-DBSCAN源代码分析

    Weka算法Clusterers-DBSCAN源代码分析

    2022年1月31日
  • 数据库分区表[通俗易懂]

    数据库分区表[通俗易懂]数据库分区表(一)什么情况下需要分区,准备需要分区的数据   什么数据库需要进行分区?首先看一下我们的案例:2010年6月我们六期IT开发团队接到一个XX全国连锁店的餐饮系统,经过一周的敏捷开发之后,XX餐饮系统正式上线了,由于该软件的功能强大,操作简单,功能灵活等特性,很快在全国各地铺展开来。XX餐饮店的美食也颇受顾客的喜爱,有的店每天的收入高达1W元人民币,每天这么多的收入,那么每天要

    2022年5月3日
  • 无线网络规划与设计案例_无线网络的发展前景

    无线网络规划与设计案例_无线网络的发展前景无线网络规划与设计随着WLAN技术的成熟和终端的普及,WLAN网络承载的业务与应用逐渐丰富,为越来越多的终端用户所喜爱,各大运营商与企业也不断加大对WLAN网络建设的投入,在各热点楼宇(写字楼、酒店、机场等)规划部署WLAN网络,以满足终端用户不断上涨的业务需求。本文将对无线网络的规划设计原则加以总结和分析,可作为无线网络部署的指导意见。无线网络规划与设计当前WLAN网络采

    2022年9月28日
  • 红月服务器制作过程,红月3.8C私服架设教程

    红月服务器制作过程,红月3.8C私服架设教程————————————————九到一私服资源下载站原创教程–红月3.8C私服架设录像教程————————————————大家好,今天架设红月私服。课前必看为MSSQL的架设教程。事先我已经安装好SQL了。下面我们下下载好服务端和客户端。桌面上建立个文件夹储存OK,…

    2022年9月28日
  • Nginx配置转发_linux端口转发代理

    Nginx配置转发_linux端口转发代理客户提供的服务器只提供个http的80端口和https的443端口,其他端口不开放,但是我们的后台是8080启动的,访问需要代理转发先找安装nignx的位置,找不到输入指令whereisnginx找nginx.conf配置文件修改配置,https默认是443端口,监听443,然后设置代理server8080端口。(下面https的证书填自己的,server_name写自己的服务器ip)upstreamnginxDemo{server.

    2022年10月19日
  • 常用放射性核素表_X射线核素的名称

    常用放射性核素表_X射线核素的名称常用放射性核素表原子序数及元素名称核素符号半衰期衰变类型括号内为每100次衰变中发生的次数主要带电粒子及其能量(MeV)括号内为平均100次衰变中发射的次数主要γ线能量(MeV)括号内为平均100

    2022年8月1日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号