搞笑的猜数字

C、C++和Java语言
回复
vb2vc
帖子: 16
注册时间: 2010-07-03 12:50
送出感谢: 0
接收感谢: 0

搞笑的猜数字

#1

帖子 vb2vc » 2011-05-20 22:34

找到了某个猜数字程序。猜了若干次,有一次结果是

代码: 全选

range[a, b]:1 1000
I think I can guess in 10 times.
I guess 500. Is it right(0), smaller(1) or bigger(2)?
2
Bigger, well, I guess 250. Is it right(0), smaller(1) or bigger(2)?
1
Smaller, well, I guess 375. Is it right(0), smaller(1) or bigger(2)?
1
Smaller, well, I guess 437. Is it right(0), smaller(1) or bigger(2)?
1
Smaller, well, I guess 468. Is it right(0), smaller(1) or bigger(2)?
2
Bigger, well, I guess 452. Is it right(0), smaller(1) or bigger(2)?
2
Bigger, well, I guess 444. Is it right(0), smaller(1) or bigger(2)?
2
Bigger, well, I guess 440. Is it right(0), smaller(1) or bigger(2)?
2
Bigger, well, I guess 438. Is it right(0), smaller(1) or bigger(2)?
2
Bigger, well, Hey, you are cheating me!
Since you've said your number was bigger than 437, hmmm, Aha, your number must be 438.
I've guessed it in 9 times. I won.
它是怎么知道我在故意“耍”它的?大家能不能写一段类似的程序实现以上功能?最好是C的。
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
送出感谢: 8 次
接收感谢: 63 次
联系:

Re: 搞笑的猜数字

#2

帖子 月下叹逍遥 » 2011-05-20 22:37

2的10次方等于1024>1000
心似浮云常自在,意如流水任东西。
此事背后一定有个天大的咪咪
广告:
1、走过路过,不要错过,dropbox网盘2.25G大放送
py大法好,退C保平安
java多妖孽,VB本异端
日诵一千遍,快活似神仙
vb2vc
帖子: 16
注册时间: 2010-07-03 12:50
送出感谢: 0
接收感谢: 0

Re: 搞笑的猜数字

#3

帖子 vb2vc » 2011-05-20 22:47

月下叹逍遥 写了:2的10次方等于1024>1000
我主要问的是
well, Hey, you are cheating me!
Since you've said your number was bigger than 437, hmmm, Aha, your number must be 438.
这一段是怎么判断出的。
头像
hardware
帖子: 73
注册时间: 2010-05-18 11:55
送出感谢: 0
接收感谢: 0

Re: 搞笑的猜数字

#4

帖子 hardware » 2011-05-23 1:14

他说的很明白了。。 既然你已经说你的数字大于437,那么你的数字只有可能是438

因为前面它猜437的时候 你说小于
但是它猜438的时候,你又说大于

所以当然知道 ぉ?
抬头看 蓝天与白云暧昧
静心听 沙滩与湖水缠绵
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45
送出感谢: 0
接收感谢: 9 次

Re: 搞笑的猜数字

#5

帖子 fanhe » 2011-06-11 0:54

即是,程序能发现矛盾
逻辑自己想,我现在是能不想就不想,反正终究能想出来
头像
tenzu
论坛版主
帖子: 36913
注册时间: 2008-11-21 20:26
送出感谢: 0
接收感谢: 21 次

Re: 搞笑的猜数字

#6

帖子 tenzu » 2011-06-11 7:58

自己猜过什么都不记得了?
头像
tangboyun
帖子: 701
注册时间: 2009-07-25 1:57
送出感谢: 5 次
接收感谢: 13 次
联系:

Re: 搞笑的猜数字

#7

帖子 tangboyun » 2011-06-11 14:22

很简单嘛,只要维护两个值,一个上界,一个下界,不在这个之内,就是你作弊。每次的提问不过就是在更新这两个值。
https://github.com/tangboyun
http://tangboyun.is-programmer.com/
提问的智慧————Eric Steven Raymond
回答的智慧————Andrew Clarke
吾尝终日而思矣,不如须臾之所学也;吾尝跂而望矣,不如登高之博见也。
急急急标题什么的,最讨厌了!
急急复急急,急急何其多,我生待急急,万事急急急。
回复

回到 “C/C++/Java”