2008-04-08 Ruby 测试题(00010)

我以前也是用 split 分割,后来我发现 scan 也能分割,而且后面可以直接跟 代码块,不用加上 .each ,就换成 scan 了,至于哪个方法效率高倒是没比较过,至少代码是省一点是一点。
用Benchmark跑了一下,发现还是split快一些
     user    system   total     real
scan  1.469000 0.000000 1.469000 ( 1.468000)
split  0.968000 0.000000 0.968000 ( 0.969000)
Benchmark 还是蛮有用的,就是用起来有点麻烦。
不怎么舒服,楼上各位有没有好的模版参考下?

傍晚时分又推进了 2 题,081 为了调整坐标把我折腾得够呛。
069 硬算了前 5 个最大数字立马找到规律,20分钟解决~

Your current rating is 36% genius, having solved 68 out of 188 problems.
来踩拉~

[Copy to clipboard] [ - ]
做了81就可以想82了。
69貌似我没花多少时间。

[Copy to clipboard] [ - ]
附加题来了。
把题目里的1000改成100000。

说是附加,其实是因为我做这道题目的时候还不知道Ruby的整型精度有那么高,白写了那么堆代码,好不甘心啊。
可以顺便讨论下在Ruby内部是怎么处理形如100!以及2的1000次方这类大数的,为什么精确度那么高的情况下又算得那么快。不知道谁能找到些资料来学习学习。
100000不够,Ruby 还是可以直接算,还得再加 1 个0,
By The Way 直接在Scite 显示 2 ** 100000 让我死机了 。。。。。。
如图,刚上去就看见了。
102本来想用矢量乘做的,后来偷懒了,直接一排的IF ELSE搞定。
今天战果:
Your current rating is 39% genius, having solved 73 out of 188 problems.

比较有意思的是第 71 题,一行代码解决~
然后看到73题,以为同样简单,结果被71的老套路给套死了,换成死办法才出结果。汗自己一个~

Your current rating is 42% genius, having solved 79 out of 188 problems.

82搞定看了眼 83 ,晕了,竟然还没完没了了 ~~~ 收工,今天不做题了