*[[Problem 20:http://projecteuler.net/problem=20]] 「各位の数字の和 2」 [#xe9a4020]

'''n''' × ('''n''' - 1) × ... × 3 × 2 × 1 を '''n'''! と表す.

例えば, 10! = 10 × 9 × ... × 3 × 2 × 1 = 3628800 となる.~
この数の各桁の合計は 3 + 6 + 2 + 8 + 8 + 0 + 0 = 27 である.

では, 100! の各位の数字の和を求めよ.

注: [[Problem 16]] も各位の数字の和に関する問題です。解いていない方は解いてみてください。

1   #!/bin/sh
2   
3   seq 1 1 1119 \
4   | # 自然数1~1119の生成

5   awk 'NR==1{print $0; next} NR%2!=0{for(i=0;i<=3;i++){print $0*$0-($0-1)*i}}' \
6   | # 1と、1以外の奇数に基づいた対角成分の出力

7   awk '{s+=$0} END{print s}'
8     # 和の算出


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS