Permalink
Browse files

変更たまってきてた

  • Loading branch information...
conditional committed Jun 1, 2011
1 parent 5ba5aed commit 774d9622649491afdf6e144c6561d8cfeb7c5d25
Showing with 13 additions and 4 deletions.
  1. +9 −2 017.rb
  2. +1 −0 035.rb
  3. +1 −1 039.rb
  4. +2 −1 prime_list.rb
View
11 017.rb
@@ -37,20 +37,27 @@
def to_e(n)
ret = ""
arr = n.to_s.split("").map{|e| e.to_i}
+ # 3桁の数のばあい
if arr.length == 3
ret << DB[arr[-3]] + "hundred"
end
+
+ # 2桁の部分に数字がある場合
if arr.length >= 2 and (arr[-2] != 0 or arr[-1] != 0)
- ret << "and" if ret != ""
+ ret << "and" if ret != "" # 3桁の場合はandをくっつける
+
+ # 20,30,40,..etc
if DB2[(arr[-2]*10)]
ret << DB2[(arr[-2]*10)]
if arr[-1] != 0
ret << DB[arr[-1]]
end
- else
+ else # 11,12,13,14,..etc
ret << DB[arr[-2]*10+arr[-1]]
end
end
+
+ # 1桁目
if arr.length == 1
ret << DB[arr[-1]]
end
View
1 035.rb
@@ -2,6 +2,7 @@
# http://projecteuler.net/index.php?section=problems&id=35
# Array#permutationの仕様がまだいまいちわかってない
# けっきょく Array#rotate つかった
+# 実行時間は3秒くらい。
require "prime_list"
require "rubygems"
View
2 039.rb
@@ -7,7 +7,7 @@
def count_partision(p)
ret = []
(1...p).each do |c|
- (1...p-c).each do |a|
+ (1...(p-c)/2).each do |a| #探索範囲狭めて計算時間半分くらい。
b = p - (a + c)
ret << [a,b,c] if a**2 + b**2 == c**2
end
View
@@ -1,7 +1,8 @@
-# -*- coding: undecided -*-
+# -*- coding: utf-8 -*-
# http://code.nanigac.com/source/view/709
# あんまり理解してないけど速いから使ってる
+
def prime_list(n)
return [] if n < 2

0 comments on commit 774d962

Please sign in to comment.