标签:
文化it |
分类: 杂谈 |
计算机专业的学生大都知道约瑟夫环问题。n个人(编号1...n)围成一圈,选择一个正整数k,从第一个人开始从1报数,报到k的人被拉出圈外,在剩余的人中,从被拉出去那人下一个人开始,继续从1开始报数,报到k的人再被拉出圈外。如此循环,直至剩下最后一人。所以,对于每给定一组n和k,可以算得一个编号序列,序列中编号的位置表示这个人被拉出圈外的顺序。
这是一个数学问题,非常适合用计算机编程去解决。所以,它经常作为一道编程练习题,出现在各种计算机编程语言教材当中。之所以叫约瑟夫环,因为相传是由犹太历史学家约瑟夫(公元37-100)最先提出来的。
公元66年,约瑟夫不情愿地参与领导了犹太同胞反抗罗马统治的起义,后来起义失败,他和一些宁死不降的起义者被困于一个山洞之中。罗马将军韦斯巴芗(Vespasian)派人来劝降,他主张投降,其余的人不答应,并以死相逼。最后,约瑟夫提议,与其死在自己的手上,不如死在彼此的手上。据说,他提出用约瑟夫环方法决定生死(实际上是所有人抽签,每一轮抽到1的人把抽到2的人杀死),陆续杀死了其余被困者,只有他和另外一人出了山洞投降。这个事件也反应了那个时代犹太人悲惨的状况。当他被带到韦斯巴芗面前时,因为当面预言韦斯巴芗会成为罗马皇帝,所以免于牢狱之刑。后来这个预言果真应验了,于是,他托庇于韦斯巴芗门下,并取得了罗马公民身份。在提图斯(韦斯巴芗的儿子)于公元70年摧毁耶路撒冷圣殿之后,他移居于罗马。因为这些经历,他常被指责为叛徒。
但是,约瑟夫是公元一世纪重要的历史学家,主要著作有《犹太古史》和《犹太战记》。再由于他生活于1世纪(和使徒时代相当),是距离耶稣基督时代最近的历史学家。所以,他关于犹太历史的描述常作为《圣经》里记述史实的重要佐证和参考。《犹太古史》里关于希律家族、施洗约翰、大祭司、犹大巡抚(彼拉多、腓力斯、非斯都)等记述都与《圣经》<福音书>和<使徒行传>相印证,有些内容互相补充。例如,关于施洗约翰的被捕入狱和《圣经·马太福音》一致,并且约瑟夫给出了施洗约翰被囚禁和杀害的地点。再如,关于希律亚基帕演讲时暴毙的史实,《圣经·使徒行传》12章记载,希律面对听众谄媚,没有归荣耀给神,被主的使者所罚,以至于被虫所咬而亡。而《犹太古史》里面也有相关记载,并且给出了详细的过程描述。《犹太古史》从另一个视角给《圣经》部分内容提供了证据,证实了《圣经》记载的正确性。
耐人寻味的是,在《犹太古史》里面也有关于耶稣基督的记述,里面这样记述:此时,有一位智者,名叫耶稣,他有佳美的言行,并因为自己的德行而著称。在犹太及其他民族中,有许多人跟从耶稣,作了他的门徒。彼拉多将他定罪,并把他钉死在十字架上。然而,那些已经成为耶稣门徒的人,并没有因此背弃自己门徒的身份。他们宣称说,耶稣在被钉死在十字架上的第三天向他们显现了,耶稣已经复活了。因此,耶稣可能就是那位弥赛亚。众先知已经就他做出了奇妙的预言。而且,那些因为耶稣基督得名的基督徒们,迄今为止仍然没有消失。引自《约瑟夫著作精选》,北京大学出版社。
从这份描述可见,在使徒时期,耶稣基督的名声并没有因为被钉十字架而削弱。相反地,在耶稣的感召下在,经过使徒们的不懈努力,基督复活的福音正迅速传播。从犹太地,到撒玛利亚,再到亚细亚,非洲,欧洲等等。约瑟夫是一位犹太人,能做出如此评价,可见耶稣对那个时代影响之深。这种影响不仅是因为对耶稣所行诸多神迹的耳闻目睹,还包括众门徒所做的基督复活见证。耶稣基督复活之后曾多次向多人显现,最多一次是同时向500人显现(哥林多前书15:6)。