package margusmartseppcode.From_20_to_29;
public class Problem_26 {
// Brent's algorithm
public static void main(String[] args) {
int r = 1, c = 0, power, lam, t, tr, h, hr;
for (int i = 999; i > 1; i--) {
power = lam = 1;
tr = (1 % i) * 10;
hr = (tr % i) * 10;
t = 1 / i;
h = tr / i;
while (t != h || tr != hr) {
if (power == lam) {
t = h;
tr = hr;
power *= 2;
lam = 0;
}
h = hr / i;
hr = (hr % i) * 10;
lam++;
}
if (lam > c) {
c = lam;
r = i;
}
}
System.out.println(r);
}
}
Tuesday, September 8, 2009
Euler Problem 26 solution
Time (s): ~0.021
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment