最近、私の評判はでした25,121
。各数字のグループ化(つまり、コンマで区切られた数字)が完全な正方形であることに気付きました。
あなたの挑戦は、非負の整数Nと単項ブールブラックボックス関数 f:Z * → Bが与えられると、Nの桁グループに適用されるfの各値が真である場合は真の値を返し、それ以外の場合は偽です。
右側から数を3のグループに分割することにより、数字のグループ化を見つけることができます。一番左のグループには、1、2、または3桁があります。いくつかの例:
12398123 -> 12,398,123 (3 digit groupings)
10 -> 10 (1 digit grouping)
23045 -> 23,045 (2 digit groupings)
100000001 -> 100,000,001 (3 digit groupings)
1337 -> 1,337 (2 digit groupings)
0 -> 0 (1 digit grouping)
追加のルール
- この関数は、ブール値(
true
およびなどfalse
)、1
sおよび0
s、または真偽値にマッピングできます。回答でサポートされている形式を指定してください。 - 入力として整数、または整数文字列(数字で構成される文字列)を使用できます。
- プログラムまたは関数を作成できます。
- デジタルグループを関数fに渡す場合、不要な先行ゼロをすべて削除する必要があります。例えば、F、に適用した場合N = 123000のように実行されるべきであるF(123)およびF(0)。
テストケース
関数表記法はn -> f(n)
、例えばですn -> n == 0
。すべての演算子は整数演算を前提としています。(例sqrt(3) == 1
)
function f
integer N
boolean result
n -> n == n
1230192
true
n -> n != n
42
false
n -> n > 400
420000
false
n -> n > 0
0
false
n -> n -> 0
1
true
n -> sqrt(n) ** 2 == n
25121
true
n -> sqrt(n) ** 2 == n
4101
false
n -> mod(n, 2) == 0
2902414
true
n -> n % 10 > max(digits(n / 10))
10239120
false
n -> n % 10 > max(digits(n / 10))
123456789
true
n -> n > 0
適用0
)する必要があります。
[0]
です。