Pages

Tuesday, September 8, 2009

Euler Problem 20 solution

Time (s): ~0.001
package margusmartseppcode.From_20_to_29;

import java.math.BigInteger;

public class Problem_20 {
 static final int maxSize = 101;
 static BigInteger f[] = new BigInteger[maxSize];
 static {
  f[0] = BigInteger.ONE;
  for (int i = 1; i < maxSize; i++)
   f[i] = f[i - 1].multiply(BigInteger.valueOf(i));
 }

 public static void main(String[] args) {
  int sum = 0;

  for (char c : f[100].toString().toCharArray())
   sum += Character.getNumericValue(c);

  System.out.println(sum);
 }
}

No comments:

Post a Comment