Project Euler 71

プロジェクトオイラー
http://projecteuler.net/index.php

Q71.
分母が1000000以下で3/7より小さくて最も近い分数の分母

求める分数をp/qとすると、3/7 - p/q = (3q - 7p) / 7qだから、3q - 7p = 1であるp,qを求めればよい。3(q-5) = 7(p-2)より、q = 7n + 5, p = 3n + 2、p,qは互いに素は保証されているから、最も大きいqを選べばよい。



N = 10 ** 6
n = (N - 5) / 7
p = 3 * n + 2
q = 7 * n + 5
print p