すべての負でない整数は4つの2乗整数の合計として書き換えられることは古くからの知識です。たとえば、数値1はとして表現できます。または、一般に、負でない整数、整数ように
ジョセフ=ルイ・ラグランジュはこれを1700年代に証明したので、しばしばラグランジュの定理と呼ばれます。
これは時々四元に関連して説明されている-によって発見数の種類ウィリアム・ハミルトンとして表さ1800年代に、
ルドルフ・リプシッツは、リプシッツ四元数と呼ばれる整数成分のみを持つ四元数を研究しました。四分円を使用すると、すべてのリプシッツ四元数が整数の友人を持つと考えることができると想像できます。たとえば、クォータニオンは、整数関連付けられていると考えることができます。また、逆方向に進むと、すべての整数はリプシッツ四元数に友人がいると考えることができます。
しかし、ラグランジュの定理には興味深い詳細があります。合計は一意ではありません。各整数には、合計して作成できる4つの正方形のいくつかの異なるセットがある場合があります。たとえば、数値1は、非負の整数を使用して4つの方法で表現できます(このチャレンジでは非負のみを考慮してください):
被加数は常に0または1の2乗ですが、式の異なる位置に配置できます。
この課題では、重複を排除するために被加数を最低から最高に「ソート」して、この演習では1が4つの正方形の合計として表される1つの方法しかないと考えられるようにします。
もう1つの例は、4つの方法で表現できる42番です(ここでも、非負のa、b、c、dのみを考慮し、重複するコンポーネント配置を排除します)
整数を特定の四元数に関連付けられていると表現するこれらの異なる方法のそれぞれを想像するとどうなりますか?次に、42という数字がこれらの4つの四元数に関連付けられていると言えます。
、、が3次元ユークリッド空間のベクトルであるため、クォータニオンの標準的なコンピューターグラフィックスの解釈を想像すると、クォータニオンの、、成分は3次元のデカルト座標になります。整数は、この思考プロセスを通じて、空間内の3次元座標のセットに関連付けることができます。たとえば、番号42は、次の4つの座標に関連付けられています:
これは、点群、または空間内の点のセットと考えることができます。さて、空間内の有限点のセットに関する興味深い点の1つは、周囲に最小限の境界ボックスを常に描画できることです。このボックスは、すべてのポイントを収めるのに十分な大きさを持ちます。ボックスが軸で整列された通常のボックスであると想像する場合、それは軸整列境界ボックスと呼ばれます。境界ボックスには、幅、長さ、高さを決定し、それらを掛け合わせることで計算可能なボリュームもあります。
次に、四元数によって形成されるポイントの境界ボックスのボリュームを想像できます。整数1には、この演習の基準を使用して、象限がである1つのクォータニオンがあります。これは非常に単純なポイントクラウドであり、1つのポイントしか持っていないため、バウンディングボックスのボリュームは0です。ボックスの最小点である最大である その結果、幅、長さ、高さが2、2、2になり、ボリュームが8になります。
整数ためものとする、qvolumeはquadranceを有する四元により形成された全ての3D点の軸平行境界ボックスの容積が等しい、ここで四元数の成分は非負で、です。
単一の非負整数与えられると、のqvolume を出力するプログラムまたは関数を作成します。
例:
input -> output
0 -> 0
1 -> 0
31 -> 4
32 -> 0
42 -> 8
137 -> 96
1729 -> 10032
これはコードゴルフで、最小バイト数が勝ちます。