体験を伝える―『ガジェット通信』の考え方

面白いものを探しにいこう 本物を体験し体感しよう 会いたい人に会いに行こう 見たことのないものを見に行こう そしてそれをやわらかくみんなに伝えよう [→ガジェ通についてもっと詳しく] [→ガジェット通信フロアについて]

第129回「今週のアルゴリズム:並べ替えの繰り返し2」正解者発表

「今週のアルゴリズム」とは

「今週のアルゴリズム」問題は、毎週火曜日にちょっとした問題を出題し、正解するとニックネームを掲載していくというシリーズ問題です。そして、正解した方全員に「たいへんよくできました」バッジも付与されます。

第129回は「今週のアルゴリズム:並べ替えの繰り返し2」の問題です。

問題文「第129回 今週のお題:並べ替えの繰り返し2」

第129回「今週のアルゴリズム:並べ替えの繰り返し2」正解者発表

1~m までの数字が1つずつ書かれた m 枚のカードがあります。
カードは一列に並べられており、一番左のカードに書かれている数字を見て、その数の枚数だけカードを左から取り、並びを逆順にする作業を繰り返します。
作業は左端が1になるまで続けます。

例えば、m = 4 のとき、最初の並びが「3 4 2 1」の順になっていると、以下の手順を繰り返して3回で停止します。

3 4 2 1
↓ 1回目:左端が3なので、左の3枚を反転
2 4 3 1
↓ 2回目:左端が2なので、左の2枚を反転
4 2 3 1
↓ 3回目:左端が4なので、4枚を反転
1 3 2 4

標準入力から m, n という2つの数がスペースで区切って与えられたとき、与えられた m 枚のカードに対して上記と同様の作業を n 回行って停止するような最初の並びが何通りあるかを求め、標準出力に出力してください。
(なお、mは最大で9とします。)

例えば、 m = 4, n = 3 のとき、上記のほかに以下のパターンがあり、合わせて4通りありますので、標準出力に「4」を出力します。

4 2 1 3

3 1 2 4

2 1 3 4

1 2 3 4

4 1 3 2

2 3 1 4

3 2 1 4

1 2 3 4

2 3 4 1

3 2 4 1

4 2 3 1

1 3 2 4

【入出力サンプル】
標準入力
4 3

標準出力
4

正解者

おめでとうございます!正解者のみなさんです。(新着順)

1 2次のページ
CodeIQ MAGAZINEの記事一覧をみる
  • 誤字を発見した方はこちらからご連絡ください。
  • ガジェット通信編集部への情報提供はこちらから
  • 記事内の筆者見解は明示のない限りガジェット通信を代表するものではありません。
GetNews girl / GetNews boy

オスカー2018年晴れ着撮影会