问个问题

number321 2007-04-25 12:45:56
有两个人,头上分别写了两个相邻的正整数,他们只能看到对方头上的数,想要知道的是自己头上的数
有一个人先说"我不知道自己头上的数是什么"
对方接着也说"我不知道自己头上的数是什么"
最先说话的人又说"我不知道....."
双方各依次说了4次不知道
然后最先说话的人说"我知道自己头上的数是什么了"
另一个人也说"我也知道自己头上数是什么了"

例如,一个是2一个是3
2看到对方是3,会想自己是2还是4,所以说"不知道"
3看到对方是2,会想自己是1还是3,如果自己是1的话对方肯定就已经判断出来是2了,应该说知道的,既然他不知道,那么自己一定是3了,所以说"知道"
同理,2在看到3说知道后,也知道自己如果是4的话对方是不可能这么快就判断出3这个结果的,所以自己是2,所以也就"知道"

想问一下怎么写两个进程模拟这两个人,两个进程之间有一个先运行,然后都各自等待对方的一句话之后判断,然后给对方一句判断结果,对方再根据得到的话判断,直到两个都知道自己是什么数为止

...全文
191 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jack_xiao 2007-04-25
  • 打赏
  • 举报
回复
这个问题我在学算法分析时老师讲过。。。。。
shshsh_0510 2007-04-25
  • 打赏
  • 举报
回复
我不知道.....

33,028

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧