行き方
入力整数n(n >= 0)が与えられると、最小の正の整数 mを出力するプログラムを作成します。ここで、
n = a[1]^b[1] + a[2]^b[2] + a[3]^b[3] + ... + a[k]^b[k]aとbは、同じ長さの有限シーケンスです- すべての要素は、
a以下でありますm - すべての要素は、
b以下でありますm - のすべての要素
aは異なり、整数ですa[x] >= 0 - のすべての要素
bは異なり、整数ですb[x] >= 0 a[x]またb[x]、両方とも0ではありません(0 ^ 0は不確定であるため)
これはcode-golfなので、バイト数が最も少なくなります。
例
In 0 -> Out 1
Possible Sum:
In 1 -> Out 2
Possible Sum: 1^0
In 2 -> Out 3
Possible Sum: 2^1
In 3 -> Out 3
Possible Sum: 2^1 + 1^0
In 6 -> Out 4
Possible Sum: 2^2 + 3^0 + 1^1
In 16 -> Out 5
Possible Sum: 2^4
In 17 -> Out 4
Possible Sum: 3^2 + 2^3
In 23 -> Out 6
Possible Sum: 5^1 + 3^0 + 2^4 + 1^3
In 24 -> Out 5
Possible Sum: 4^2 + 2^3
In 27 -> Out 4
Possible Sum: 3^3
In 330 -> Out 7
Possible Sum: 6^1 + 4^3 + 3^5 + 2^4 + 1^0
m<2、m<3then m<4などのすべての組み合わせのブルートフォース検索ですn。また、合計を無条件にする0ことを考えましたが、出力はどうなりますか?m>?
n = a[1]^b[1] + a[2]^b[2] + ... + a[k]^b[k]ます。
aとbは、長さの有限シーケンスであるため、制約を満たさ0ない整数mはなく、最小の整数がないため、答えは定義されていません。可能な修正方法は、最小の自然数m(この場合、予想される答えをそこに変更する必要があります0)または最小の正の整数を求めることmです。