この記事では、ヒューマン・リソース・マシーンの私の解答を紹介します。
夫や他サイトさんの解答を見てみると、人によって解き方が違うのが面白かったので、私の解答も記録として残してみることにしました。
注意事項
効率化目標を達成していないステージもあります。
もっとよい解き方があるかもしれないことをご承知おきください。
自分の解答とくらべて、
参考にする(なる?)もよし、
鼻で笑うもよし、
違いを楽しんでいただけたら幸いです。
攻略も今回で最終回!32年目~41年目までです。
終盤は、ふつうにクリアするだけで精一杯でした 汗
他のステージの解答は下の記事にまとめています。
32年目:同じのはいくつ?
間接指定を使ってカーペット上の文字を順番に比較していき、ZEROのカーペットになったら比較を終了します。
34年目:母音を省け
間接指定を使って、カーペット上の文字を順番に比較していき、ZEROのカーペットになったら比較を終了します。
35年目:ダブりを省け
効率化目標を達成できませんでした。
入力側のデータをカーペット上に保管しておきましょう。
END-Aには一番最後のアドレス番号を入れています。
36年目:辞書順に並べよ
スピード目標のみ達成。
スピード目標
1つ目の単語を 0~ 7に、2つ目の単語を10~17に保管します。
A.LEN、B.LENには、それぞれの単語の文字数をカウントしています。
37年目:次へつなげよ
38年目:数字をバラせ
効率化目標を達成できませんでした……
- 100の位(入力 ÷ 100)
- 10の位(1の余り ÷ 10)
- 1の位(2の余り)
100の位が0の時、0を出力すると怒られるので注意!
例えば、入力が29の時、0、2、9 を出力しようとするとNG。2と9のみ出力します。
10の位も同様で、入力が7の時、0、0、7ではなく、7 のみ出力します。
39年目:座標をもとめよ
- X … 入力データを4で割ったあまり
- Y … 入力データを4で割った商
40年目:素因数に分解せよ
サイズ目標のみ達成。
サイズ目標
ヒューマン・リソース・マシーンで一番難しい問題。上司が無理して解く必要はないというレベルです。
直面するのが「素数をどうやって求めるのか」問題。
素数とは「その数と1でしか割れない数字」のことですが、残念ながら素数を求める公式はないそうです(絶望)
公式がないなら……「全部やっちゃえば?」
41年目:並べ替えよ
サイズ目標のみ達成。
サイズ目標
選択ソートと呼ばれるソートのアルゴリズムのひとつです。
他のステージの解答
ヒューマン・リソース・マシーン、私の解答でした。
行数の多いステージでは、画像が見にくくて申し訳ありません。
拡大してなんとか見ていただければと思います。
他のステージの解答は下の記事にまとめています。