行列

行列

中級

説明

数値からなる行列を表す文字列が与えられたとき、その行列の行と列を返してください。

例えば、次のように改行が埋め込まれた文字列が与えられたとします。

9 8 7
5 3 2
6 6 7

これは、次の行列を表しています。

    1  2  3
  |---------
1 | 9  8  7
2 | 5  3  2
3 | 6  6  7

このとき、コードは次の2つを出力できるようにします。

  • 行の配列(行を上から下へとたどりながら、各行を左から右へ読みます)
  • 列の配列(列を左から右へとたどりながら、各列を上から下へ読みます)

例の行列の行は次のとおりです。

  • 9, 8, 7
  • 5, 3, 2
  • 6, 6, 7

そして、その列は次のとおりです。

  • 9, 5, 6
  • 8, 3, 6
  • 7, 2, 7

チャレンジ

  • forループを一切使わずに、この解答を実装できますか?(代わりにイテレーターを使う、ということです)
  • Matrixの中に2つのデータ構造(行を表すものと、列を表すもの)を持たせるのは比較的簡単ですが、構造体の中に入力のコピーを2つ保持することなく、この解答を実装できますか?

便利なメソッド

GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Rust Exercism

行列を始める準備はできましたか?

Exercismに登録すれば、99個の演習、そして本物の人間によるメンタリングとともに、Rustを学んでマスターできます。すべて無料です。