Project Euler - Problem 9

ピタゴラスの三つ組(ピタゴラスの定理を満たす整数)とはa<b<cで
a^2 + b^2 = c^2
を満たす数の組である.

例えば, 3^2 + 4^2 = 9 + 16 = 25 = 5^2である.

a + b + c = 1000となるピタゴラスの三つ組が一つだけ存在する. このa,b,cの積を計算しなさい.
p catch{|tag|
  1.upto(1000 - 2) do |a|
    a.upto(1000 - a) do |b|
      c = 1000 - a - b
      throw(tag, a * b * c) if a ** 2 + b ** 2 == c ** 2
    end
  end
}
# => 31875000