問題一覧 > 通常問題

No.492 IOI数列

レベル : / 実行時間制限 : 1ケース 1.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 131
作問者 : square1001 / テスター : e869120
3 ProblemId : 1283 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2017-03-10 22:17:16

問題文

あるとき, lttさんは, あるコンテストで101位を取ってギリギリ賞金を逃がしてしまいました。

しかし, いつもポジティブなlttさんは, 次のように考えました。

「『101』・・・これはIOIを表している。これはIOIに行けるような実力を持っているということだ!」

そこで, 彼は次のような「IOI数列」という数列を定義し, 自信を高めようとしました。

IOI数列は, 1,101,10101,1010101,101010101,10101010101, と続く数列です。

彼は, この数列がa1=1,ai=100ai1+1となっていることに気付きました。

しかし, これを速く解く方法を彼は知らなかったので, 友達であるあなたに手伝ってもらうことにしました。

整数Nが与えられます。そのとき, IOI数の第N項を1000000007で割った余りと101010101010101010101で割った余りを求めなさい。

入力

N

1行目に整数N(1N1018)が与えられる。

出力

1行目にaN mod 1000000007を出力しなさい。

2行目にaN mod 101010101010101010101 を出力しなさい。

最後に改行を忘れないこと。

サンプル

サンプル1
入力
3
出力
10101
10101

a3=10101です。

サンプル2
入力
7
出力
101003031
1010101010101

a7=1010101010101であり, a7 mod 1000000007=101003031 となります。

サンプル3
入力
101
出力
963727330
101

a101 mod 101010101010101010101=101 となります。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。