706 : 3ライクな数

正の整数 nn に対して、f(n)f(n) を、nn の空でない部分文字列のうち、3で割り切れる数を表すものの個数と定義する。 例えば、文字列 2573 には10個の空でない部分文字列があり、そのうち57、573、3の3つが3で割り切れる数を表す。 したがって、f(2573)=3f(2573) = 3 となる。

f(n)f(n) が3で割り切れるとき、nn3ライク (3-like)であるという。

F(d)F(d) を、dd 桁の数のうち3-ライクなものの個数と定義する。 例えば、F(2)=30,F(6)=290898F(2) = 30, F(6) = 290898 である。

F(105)F(10^5) を求めよ。解答は 1,000,000,0071,000,000,007 で割った余りで答えよ。

最終更新

役に立ちましたか?