一个烂大街的题,前两天刚好看到别人解这个题,用c++实现的,网上还有很多的java版的等等,我就改成了ruby版的,ruby版的程序算是比较短的了吧,还是有些函数式的影子,而不是纯粹的ruby化面向对象。
小明和小强都是张老师的学生,张老师的生日是M月N日,2人都知道张老师的生日
是下列10组中的一天,张老师把M值告诉了小明,把N值告诉了小强,张老师问他们知道他的生日是那一天吗?
3月4日 3月5日 3月8日
6月4日 6月7日
9月1日 9月5日
12月1日 12月2日 12月8日
小明说:如果我不知道的话,小强肯定也不知道
小强说:本来我也不知道,但是现在我知道了
小明说:哦,那我也知道了
请根据以上对话推断出张老师的生日是哪一天
ruby版程序,就是按照条件排除,把数组内值非设定的都为nil,剩下的就是张老师的生日了。
month = [3,3,3,6,6,9,9,12,12,12] # 月份
date = [4,5,8,4,7,1,5,1,2,8] #日期
#单一日期对应月份的值全部设置为nil
date.each_index do |i|
month.each_index { |j| date[j] = nil if month[j] ==month[i] } if date.count(date[i]) == 1
end
#剩余的日期,去掉重复的
date.each do |i|
date.each_index { |j| date[j] = nil if i == date[j] } if date.count(i) ==2
end
#把日期为nil的对应月份也设置为nil
date.each_index do |i|
month[i] = nil if date[i] == nil
end
#去掉重复的月份
month.each do |i|
month.each_index { |j| month[j] = nil if i == month[j] } if month.count(i) ==2
end
#月份nil对应的日期为nil
month.each_index do |i|
date[i] = nil if month[i] == nil
end
#剩下的日期就是张老师的生日了。
print "Teacher's birthday is #{month.compact[0]}-#{date.compact[0]}"
分享到:
相关推荐
生日问题是指,如果一个房间里有23个或23个以上的人,那么至少有两个人的生日相同的概率要大于50%。这就意味着在一个典型的标准小学班级(30人)中,存在两人生日相同的可能性更高。对于60或者更多的人,这种概率要...
用python画生日蛋糕,并可自行设置生日祝福对象及祝福语。
五张卡片猜生日简化版.exe
用python画生日蛋糕,并可自行设置生日祝福对象及祝福语。
一个房间有23个人,会有两个人生日相同吗?答案是有50%的概率。这就是所谓的生日问题birthday problem)或生日悖论(birthday paradox)。本文回答的问题是,当人数众多时,生日相同的概率达到50%,有多少人。
编码实现对朋友的生日祝福。包含了祝福语的动态变化以及屏幕颜色的变化。比较有趣
1-9岁生日电视投屏壁纸,生日壁纸,小朋友生日。 可爱的生日壁纸。63张 7类壁纸
html好看的生日祝福,生日表白(源码).zip 代码完整,下载可用。小白也可实战。 html好看的生日祝福,生日表白(源码).zip 代码完整,下载可用。小白也可实战。html好看的生日祝福,生日表白(源码).zip 代码完整,...
生日快乐c
幻灯片使用温馨粉色作为主题色,PPT元素使用了生日蛋糕、生日蜡烛、鲜花、生日照片等。整个幻灯片模板给人浓浓的喜庆氛围happy birthday! 您可以自己选择合适的背景音乐添加到PowerPoint里面,那样就更加完美了。 ...
生日快乐歌 程序代码 lyric=['祝你生日快乐'... '祝你生日快乐'... '祝你生日快乐'... '祝你生日快乐'];
利用二进制,写出五组数据,然后问对方五个相同问题:你的生日是否在这些数中,之后根据二进制,计算这个人的生日.
送给要祝福他(她)生日的一个礼物吧,程序员追女神必备,女屌追男神神奇哦
如果您是一名在读的学生 特别是一名生活委员时 您是否会为了确定同学的生日而查日历 特别是农历 而感到特别繁琐 如果您将是一名快要毕业的学生 你是否想在毕业之后几年后 仍能记住上学时同学的面孔 如果您是一位拥有...
美萍服装销售管理积分管理生日提醒破解版注册码注册机
生日快乐代码.zip
c++的生日歌代码,挺简单的
这是一个用C语言写的祝福生日的小程序,里面包括一些小动画等等
用html+css+js实现的一个生日表白的一个代码。从此不用担心找不到女朋友
生日祝福,来自github网上的开源库,欢迎下载分享。。。。。