`
zqjshiyingxiong
  • 浏览: 439744 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

面试RUBY AND RAILS的一次经历

阅读更多

    今天按照自己定的步骤,一步一步的完成了面试前的准备工作,到了中午,到楼下的吃了碗骨头汤,就其中两轮车奔赴考场……

    大概过了一个小时就到达目的地了,离我住的地方不算太远。

    ...;在一楼,进去后填了一下简单的简历,一个姓刘的来面试了(可能会是我将来的老大),开始面试……老规矩,先

 

自我介绍了一番,主要是工作中用到的技术方面……

    接着,开始提问,我回答,基本可以回答上来,对RAILS这块经验不是太足……

    “其他也没什么要问的,出一道逻辑题:有36匹马,六个跑道?没有记时器等设备,用最少的比赛次数算出跑的最快的前

 

三名马?”

     “先不要谈次数,先算出三匹最快的吗?”


      一开始还有点蒙,有点不知所措,后来,慢慢的开始思考:36匹马,分6次跑,各取最快的最快的一匹,然后从其中选

 

出三个最快的马?  这样明显不对,左思右想,前三匹,前三匹……

      对,就是前三匹:将马分六次跑,各取前三名,剩下:18匹;在分三次,再各取前三剩下:9匹;再将九匹,分成两

次,一次5个,一个4个,取前三;最后还有六个,在比就得出前三名了;( 其实这里用了12次,可以变成11次,就是

 

剩下9匹的时候,任意选择6匹马比较,取前三,这样就可以少一次了!)

     第一关算是过了,不过不是最佳答案,听他的意思,最佳答案要比12次要少,其中还提示我一下:就是六次跑完了以

 

后,六个第一名进行比较!

     我想了想,还是很头大,不过第一名肯定是再这六匹马里面,我冥思苦想啊,没有结果, 他又提示我:你用了十二次,可不可以9次算出前三名!?

     那就是说在比两次,就可以出来23名了??我开始深入一个陷阱无法自拔……卡住了……

     最后没办法,他开始将给我听还画图:最快的马比完后,得出第一名,将第一名的那个组的第二名,再和其他组的第一名比,得出第二名;得第二名的那个组,下面一名再比就出比出了第三名了,OVER!
    
     开始听他讲,还是不太明白,后来看他画图才恍然大悟。

     其实前面我的思路中的一个假设(自己将这个假设变成了对的),这个假设是不成立的: 某个组的有第二或者第三名,一开始这个假设是对的,但是所有组的第一名出现了,这个假设就彻底的错了 因为所有组的第一名出来后,第二名就只会在剩下的五名第一和那个第一名的组了,第三名也是一样。还有就是,这种思路很接近程序思考的角度,就是六匹马比完了以后,他们有了次序,在通过这个次序来比出前几名。


     在路上好好想了一番,才彻底的想通了。开心哦。

     我犯了,思路上错误,还是太过局限型,不够开阔。

     RUBY ON RAILS 我来啦。加油。QJ

 

 

分享到:
评论
45 楼 zhangli123123 2009-09-03  
 
44 楼 zhangli123123 2009-09-03  
43 楼 dfinger 2009-07-22  
我也想到了.不过是从比11词想到比9次.然后想到8词..
大概用了10分钟..
42 楼 duesouth 2008-09-30  
最少8次:
第一轮:分6组,跑6次
第二轮:6个小组第一,跑1次
第三轮:淘汰小组第一倒数三个组,小组第一的取第2,3名,小组第二的取1,2名,小组第三的取第1名, 再跑一次
41 楼 Stainlesssteel 2008-09-24  
zqjshiyingxiong 写道
大家,可以想出少于9次的吗?

最好情况下7次就可以,或者验证某三匹马是不是最快的需要7次

一般情况下8次就可以了
40 楼 shaka 2008-09-23  
看到最后,感觉四个字
严重跑题!
39 楼 lzmhehe 2008-09-22  
第一组:A1、 A2、A3、 A4、 A5、 A6
第二组:B1、 B2、B3、 B4、 B5、 B6
第三组:C1、 C2、C3、 C4、 C5、 C6
第四组:D1、 D2、D3、 D4、 D5、 D6
第五组:E1、 E2、E3、 E4、 E5、 E6
第六组:F1、 F2、F3、 F4、 F5、 F6

在比一次
在假设 abcdef 就是相应的名次

按照这种想法 8次就可以
因为 第二名只能是 A2 B1  第三名 A3 B2 C1
5皮马 一次性拉出来遛遛 2,3名就确定了

38 楼 小白·菜 2008-09-22  
公务员那个答案应该是d b把?
37 楼 shaquan6776 2008-09-22  
lichwoo 写道
jwnest 写道
其实用排除法就可以把过程看的很清楚了,前面的步骤一样,6组分别比之后6个第一名比,这时候,假设排名为:A1、 B1、 C1、 D1、 E1、F1,此时可以断定A1为最快的马,然后排除法,看那些不可能是前三:
1、D,E,F组全部排除;
2、A组后三名全部排除(前面至少已经有A1,A2,A3);
3、B组后四名全部排除(前面至少已经有A1,B1,B2);
4、C组其实后五名都可以排除(前面至少已经有A1,B1,C1);

剩下的就只有:A2、A3、B1、B2、C1,跑一次ok了

你说的很对!

妙!好像只需要三次吧
36 楼 lichwoo 2008-09-21  
jwnest 写道
其实用排除法就可以把过程看的很清楚了,前面的步骤一样,6组分别比之后6个第一名比,这时候,假设排名为:A1、 B1、 C1、 D1、 E1、F1,此时可以断定A1为最快的马,然后排除法,看那些不可能是前三:
1、D,E,F组全部排除;
2、A组后三名全部排除(前面至少已经有A1,A2,A3);
3、B组后四名全部排除(前面至少已经有A1,B1,B2);
4、C组其实后五名都可以排除(前面至少已经有A1,B1,C1);

剩下的就只有:A2、A3、B1、B2、C1,跑一次ok了

你说的很对!
35 楼 mercuryzhang 2008-09-20  
pdreamer 写道
结果就8次
1、分6组比出各组的1、2、3名
2、6组中的第一名进行夺冠
3、冠军所在组的2、3名,亚军组和季军组的1、2名同时出战决出季军亚军


正解!!!顶!!!
34 楼 neora 2008-09-20  
愕然!太遗憾了,如果我去面试那个程序员的职位,我肯定是没法在规定时间内答上来的。公务员的那个考题倒是平易近人一些。
33 楼 zhengshina5 2008-09-20  
用1次就行了吧,他又没说不让加跑道,加点跑道,在一组跑被!
32 楼 zqjshiyingxiong 2008-09-20  
大家,可以想出少于9次的吗?
31 楼 zqjshiyingxiong 2008-09-20  
qichunren 写道

楼主,我想问一下,你是面试Ruby On Rails的,他没有问你关于ROR这一块的内容吗?或者说他不面试一下,你的ruby 学得怎么样之类 的.关注Ruby On Rails面试经验.

呵呵,对的,我去面试的这家使用ROR的,不过我以前一直在用J2EE,其实具体关于ROR的内容
没提问多少,主要让我谈谈使用ROR的感受和使用经历;我觉得还是用动手去写一些项目,才是硬道理。(实践出真知)
30 楼 waryist 2008-09-19  
<div class='quote_title'>liuqiang 写道</div>
<div class='quote_div'>
<div class='quote_title'>becklin 写道</div>
<div class='quote_div'>两道题都选B</div>
<p> </p>
<p> 我俩选的一样,但答案却不是</p>
</div>
<p><br/>答案C,D?真晕,很明显是试题有问题,看到那么多错别字就知道。。。想钱想疯了</p>
29 楼 becklin 2008-09-19  
zzm_fly2004 写道
呵呵,尝试算了一下,结果如下:

1、将36匹马分6小组,分别进行比赛,得出的比赛名次如下:
第一组:A1、 A2、A3、 A4、 A5、 A6
第二组:B1、 B2、B3、 B4、 B5、 B6
第三组:C1、 C2、C3、 C4、 C5、 C6
第四组:D1、 D2、D3、 D4、 D5、 D6
第五组:E1、 E2、E3、 E4、 E5、 E6
第六组:F1、 F2、F3、 F4、 F5、 F6

2、A1、 B1、 C1、 D1、 E1、 F1进行比赛,假设得出的排名为:A1、 B1、 C1、 D1、 E、1 F1,此时可以断定A1为最快的马,horse1 =  A1;
3、拿B1与(A2、A3、 A4、 A5、 A6)进行比赛,如果B1最快,那么horse2 = B1,并跳转到步骤4;如果A2最快,那么horse2 = A2 horse3 = B1,
此时共用的比赛次数为:8;
4、将C1与(A2、A3、 A4、 A5、 A6)进行比赛,如果C1或者A2最快,那么,再将C1或者A2与(B2、B3、 B4、 B5、 B6)进行比赛,
可以确定 horse3 = C1或者 horse3 =B2,此时,共用的比赛次数为:9次;

所以最后,比赛的次数为:8次或者9次。不知道对不对!

A3也有可能得第三,你第3步的推理是有问题的
28 楼 becklin 2008-09-19  
lzasi 写道
怎么都没有考虑并列的情况

有并列的情况一样啊,把并列的马打包,要参赛的话派一个代表就可以了,要淘汰的话一起淘汰就可以了。
27 楼 hyhongyong 2008-09-19  
lzasi 写道
怎么都没有考虑并列的情况

并列更好说了,只取其中之一比就行。总之不需要比8次以上啊。
26 楼 becklin 2008-09-19  
qiyongjun 写道
你们有没有考虑某个小组实力很强,按真实成绩,前三名都是他们小组的。你们这种方法都不行的

可以的,前三名都是一个小组的情况,只有A组有这个可能,而A2,A3都参加了最后一轮的比赛。

相关推荐

    NetBeans Ruby and Rails IDE with JRuby 2009

    总结来说,《NetBeans Ruby and Rails IDE with JRuby 2009》是一本详尽介绍了如何使用NetBeans作为Ruby和Rails开发工具的指南。它不仅覆盖了从安装到日常开发的所有方面,还深入探讨了如何利用NetBeans的各种高级...

    Ruby on Rails Tutorial

    《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...

    ruby on rails 101

    《Ruby on Rails 101》是一本介绍Ruby on Rails(简称RoR或ROR)的基础书籍,旨在为初学者提供一个全面而深入的学习框架。本书由Peter Marklund编写,包含了五天课程的演示文稿和相关资料,覆盖了从安装到实际应用...

    ruby on rails最新版

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。Rails以其“约定优于配置”(Convention over Configuration)...

    Ruby on Rails安装包全集(Linux)

    Ruby on Rails是一款基于Ruby语言的开源Web开发框架,它遵循MVC(模型-视图-控制器)架构模式,简化了Web应用的开发流程。在Linux环境下安装Ruby on Rails需要一系列的依赖包和步骤,本资源包提供了所需的所有组件,...

    Beginning Ruby on Rails

    Ruby on Rails is the revolutionary online programming tool that makes creating functional e-commerce web sites faster and easier than ever. With the intuitive, straightforward nature of Ruby and the ...

    ruby on rails 3 tutorial.pdf

    《Ruby on Rails 3 Tutorial》是一本专门为初学者设计的指南,旨在帮助读者快速掌握Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby语言的一个开源框架,它采用MVC(Model-View-...

    Ruby on Rails入门经典代码

    Ruby on Rails,简称Rails,是基于Ruby语言的一个开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在使Web开发过程更加高效、简洁。本压缩包中的"Ruby on Rails入门经典代码"提供了新手学习...

    Pro Active Record. Databases with Ruby and Rails

    Databases with Ruby and Rails》是一本深入探讨Ruby on Rails框架中Active Record库的专著。这本书详细阐述了如何利用Ruby语言和Rails框架来高效地处理数据库操作,帮助开发者理解并掌握数据库与Web应用之间的紧密...

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    - **定义**:Rails是一种用于快速开发Web应用程序的开源框架,基于Ruby语言。 - **特点**:Rails遵循“约定优于配置”的原则,简化了Web应用的开发过程,使得开发者能够专注于业务逻辑而非框架本身。 #### 三、创建...

    Ruby on Rails实践

    Ruby on Rails,简称Rails,是由David Heinemeier Hansson基于Ruby语言开发的一个开源Web应用程序框架。这个框架遵循“约定优于配置”(Convention over Configuration)的原则,致力于简化Web应用的开发流程,提高...

    ruby on rails for dummies

    《Ruby on Rails for Dummies》是一本专门为初学者设计的Ruby on Rails教程,它旨在帮助新手快速理解并掌握这个强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby编程语言构建的一个开源Web应用程序框架,它...

    ruby on rails 开发环境包(ruby1.8.7,rails2.2.3)

    Ruby on Rails,简称Rails,是由David Heinemeier Hansson创建的一种基于Ruby语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性。在这个开发环境包中,我们拥有Ruby ...

    Ruby on Rails中文指南

    7. **哈希与符号化键(Hashes and Symbolized Keys)**:在Rails中,使用符号作为哈希键可以提高性能,因为符号是不可变的,且在内存中只存储一次。 8. **部分视图(Partials)**:部分视图是可重用的视图代码块,...

    Ruby for Rails

    Ruby for Rails 英文原版, pdf格式 &lt;br&gt;本书是一部专门为Rails实践而写的经典Ruby著作,由四部分组成,共17章。第一部分讲述Ruby和Rails的编程环境。第二部分和第三部分与 Rails紧密联系,着重对Ruby这门语言...

    ruby on rails在线考试系统

    Ruby on Rails(简称Rails)是一种基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web开发过程并提高效率。在这个“ruby on rails在线考试系统”中,我们可以探讨以下几...

    [Michael Hartl] Ruby on Rails Tutorial

    “The author is clearly an expert at the Ruby language and the Rails framework, but more than that, he is a working software engineer who introduces best practices throughout the text.” —Greg ...

Global site tag (gtag.js) - Google Analytics