作者: rubikitch
日時: 2003/2/13(04:07)
るびきちです。

x: 大豆の総数
y: 小豆の総数
a: 大豆1袋あたりの数
b: 大豆の袋の数

とおいてみた。

EmacsLispでやってみると

(let (a b x (y 1))
  (while (<= y 1001)
    (setq a (- 2003 y)
          x (- 100000 y)
          b (/ x a))
    (when (zerop (% x a))
      (princ (format "%S\n" (list a b))))
    (setq y (1+ y))))
(1849 54)
nil

# Lispでupto相当の関数ってなんだったかな・・・・

最初はrubyで。
# 2002 >= a > y >= 1001
# a + y = 2003
# x + y = 100000
# x = a*b
# a, b ???
1.upto(1001) do |y|
  a = 2003-y
  x = 100000-y
  b = x / a
  if x%a == 0
    p [a,b]
  end
end


るびきち☆
http://www.ruby-lang.org/~rubikitch/ ←Ruby大衆化計画(笑)