非常に簡単な演習追加精度。
ただ、より一次元よりも平均よりも高精度に再帰的な追加を行います。
#include <cstdioを> する#include <アルゴリズム> の#include <iostreamの> する#include <CStringの> 使用して 名前空間STD。 int型 lenをN = 1、F [ 5003 ] [ 5003 ]。 ボイド馬力(int型K) { int型のI。 用(i = 1 ; iは= LEN <; iは++ ) [k]が[i]は、F = F [K- 1 ] [i]はFを+ [K- 2 ] [i]は、 用(i = 1 ; iが<= LEN; iは++ ) 場合(F [k]は[I]> = 10) { F [k]は[I) + 1 ] + = F [k]は[I] / 10 。 F [k]は[I] = F [k]は[I]%10 。 もし(F [K] [lenの+ 1 ])LEN ++ 。 } } int型のmain() { int型私は、 scanf関数(" %のD "、&N) F [ 1 ] [ 1 ] = 1。F [ 2 ] [ 1 ] = 2 ; 以下のための(I = 3 iが<= N; iは++ 馬力(i)を、 用(I = LEN; I> = 1 ; i-- ) のprintf(" %dの" 、F [n]は[I])。 リターン 0 ; }