説明
これらの数値に関しては、以前にもかなり多くの課題がありましたが、このうちの1つでもないことを願っています。
nは三角数回目には、最大のすべての自然数の和と等しいnは、簡単なものを。ウィキペディアのページとOEISには、さらに情報を提供したい人のためのエントリーがあります。
さて、ガウスは、すべての自然数が3つの三角形の数(これらを含む0
)として表現できることを発見しました0 + 1 + 1 = 2
。
チャレンジ
あなたの仕事は、自然数(を含む0
)が与えられたプログラムまたは関数を書くことで、引数に合計される3つの三角形の数を出力します。スペースで区切られた数字を配列として、または好きな方法で印刷できます。ただし、組み込み関数を使用して、配列、範囲、または三角形の数のリストを含むコレクションの他の形式(範囲を生成する単一のアトムなど)を直接取得することは禁止されています。
テストケース
9 -> 6 + 3 + 0 or 3 + 3 + 3
12 -> 6 + 6 + 0 or 6 + 3 + 3 or 10 + 1 + 1
13 -> 6 + 6 + 1
1 -> 1 + 0 + 0
0 -> 0 + 0 + 0
注:可能な組み合わせが複数ある場合は、いずれかまたはすべてを印刷できますが、任意の組み合わせを1回だけ印刷し、他の組み合わせを再配置した結果であるすべての組み合わせを削除する必要があります。試してみてくださいリンクと説明を本当に感謝します、私は本当にあなたが問題を解決する方法を見るのが大好きです;)
これはcode-golfなので、標準の抜け穴が適用されます。バイト単位の最短回答が勝ちますように!
a
は常に三角の数字になるとは限らない
n
、最初のn
三角形の番号のリストを返す組み込み関数は許可されますか?特定の言語をターゲットにしているように感じますが、どの言語かはわかりません。