ONLY DO WHAT ONLY YOU CAN DO

こけたら立ちなはれ 立ったら歩きなはれ

F# で Project Euler Problem 20

> [1I..100I] |> List.reduce(*)
- ;;
val it : System.Numerics.BigInteger =
  93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
    {IsEven = true;
     IsOne = false;
     IsPowerOfTwo = false;
     IsZero = false;
     Sign = 1;}
> [1I..100I]
- |> List.reduce(*)
- |> System.Convert.ToString
- ;;
val it : string =
  "93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000"
> ([1I..100I]
- |> List.reduce(*)
- |> System.Convert.ToString).ToCharArray()
- ;;
val it : char [] =
  [|'9'; '3'; '3'; '2'; '6'; '2'; '1'; '5'; '4'; '4'; '3'; '9'; '4'; '4'; '1';
    '5'; '2'; '6'; '8'; '1'; '6'; '9'; '9'; '2'; '3'; '8'; '8'; '5'; '6'; '2';
    '6'; '6'; '7'; '0'; '0'; '4'; '9'; '0'; '7'; '1'; '5'; '9'; '6'; '8'; '2';
    '6'; '4'; '3'; '8'; '1'; '6'; '2'; '1'; '4'; '6'; '8'; '5'; '9'; '2'; '9';
    '6'; '3'; '8'; '9'; '5'; '2'; '1'; '7'; '5'; '9'; '9'; '9'; '9'; '3'; '2';
    '2'; '9'; '9'; '1'; '5'; '6'; '0'; '8'; '9'; '4'; '1'; '4'; '6'; '3'; '9';
    '7'; '6'; '1'; '5'; '6'; '5'; '1'; '8'; '2'; '8'; ...|]
> ([1I..100I]
- |> List.reduce(*)
- |> System.Convert.ToString).ToCharArray()
- |> Array.map(int)
- |> Array.map(fun n -> n - 48)
- |> Array.sum
- ;;
val it : int = 648