入力:
整数のリスト(ゼロを含むことはありません)
出力:
以下に基づくカウントを持つ同じサイズのリスト:
- 現在のアイテムが負の場合:このアイテムの前にあるすべてのアイテムを調べ、それらの他の数字で数字が発生した回数をカウントします
- 代わりに現在のアイテムが正の場合:このアイテムの後のすべてのアイテムを見て、それらの他の数字で数字が発生した回数を数えます
ねじれが1つあります:リストのサイズが偶数の場合、すべての数字を1回だけカウントします(複数の数字と一致する場合でも)、サイズが奇数の場合、現在のアイテムの各数字の数字のすべての数字をカウントします(複製されます)数字は複数回カウントされます)。
これを少し明確にするためにいくつかの例を挙げましょう。
偶数リストの例:
Input: [4, 10, 42, -10, -942, 8374, 728, -200]
Output: [3, 2, 4, 1, 2, 1, 1, 5 ]
リストのサイズは偶数なので、各番号を1回だけカウントします。
4
:ポジティブだから、楽しみにしています。数字を含む3つの数字があります4
(42
、-942
、8374
)。ですから、から始め3
ます。10
:ポジティブだから、楽しみにしています。数字のいずれか含む二つの数字があり1
、および/または0
(は-10
、-200
)。したがって、2番目の出力は2
です。42
:再び肯定的です。数字のいずれか含む4つの数字があり4
、および/または2
(-942
、8374
、728
、-200
)。したがって、3番目の出力は4
です。-10
:今回はマイナスなので、後方を見る。数字1
および/または0
(マイナス記号は無視し10
ます)を含む数字は1つだけです()。したがって、4番目の出力は1
です。- 等
奇数リストの例:
Input: [382, -82, -8, 381, 228, 28, 100, -28, -2]
Output: [13, 2, 2, 4, 8, 3, 0, 11, 6 ]
リストのサイズは奇数なので、すべての数字をカウントします。
382
:ポジティブだから、楽しみにしています。3
他の番号に1つ(381
)、他の番号に6つ8
(-82, -8, 381, 228, 28, -28
)、および他の番号に6つ2
(-82, 228, 28, -28, 2
)があります。ですから、から始め13
ます。-82
:マイナスなので、逆になります。1があり3
、他の数(中382
)、および18
以外の数で(382
)。したがって、2番目の出力は2
です。- ...
228
:前向きだから、とても前向きだ。3があります2
"他の番号で、S( 、28
、-28
)、-2
および他の32
の、および2つの8
他の番号でのは(28
、-28
)。したがって、この出力は8
です。- 等
チャレンジルール:
- 入力が
0
正でも負でもないため、入力がアイテムとして含まれることはないと想定できます。 - input-listには常に少なくとも2つの項目が含まれると想定できます。
- I / Oは柔軟です。入力/出力は、整数の配列/リスト、区切り文字列、数字/文字行列などです。
- リストの最初の数が負の数である場合、またはリストの最後の数が正の数である場合、結果のリストでは0になります。
- 奇数リストでは、
228
上記の奇数の例のように、同じ数字を複数回含む数が複数回カウントされ、8
(3 + 2)ではなく5
(3 + 3 + 2)になります。
一般的なルール:
- これはcode-golfであるため、バイト単位の最短回答が優先されます。
コードゴルフ言語では、非コードゴルフ言語で回答を投稿することを妨げないでください。「任意の」プログラミング言語の可能な限り短い答えを考えてみてください。 - 回答には標準の規則が適用されるため、STDIN / STDOUT、適切なパラメーターと戻り値型、完全なプログラムを持つ関数/メソッドの使用が許可されます。あなたの電話。
- デフォルトの抜け穴は禁止されています。
- 可能であれば、コードのテストへのリンクを追加してください。
- また、必要に応じて説明を追加してください。
テストケース:
Input: [4, 10, 42, -10, -942, 8374, 728, -200]
Output: [3, 2, 4, 1, 2, 1, 1, 5 ]
Input: [382, -82, -8, 381, 228, 28, 100, -28, -2]
Output: [13, 2, 2, 4, 8, 3, 0, 11, 6 ]
Input: [10, -11, 12, -13, 14, -15, 16, -17, 18, -19]
Output: [9, 1, 7, 3, 5, 5, 3, 7, 1, 9 ]
Input: [10, -11, 12, -13, 14, -15, 16, -17, 18, -19, 20]
Output: [11, 2, 8, 4, 5, 6, 3, 8, 1, 10, 0 ]
Input: [88, 492, -938, 2747, 828, 84710, -29, -90, -37791]
Output: [8, 9, 3, 9, 3, 4, 5, 4, 12 ]
Input: [-1, 11, 11, 1]
Output: [0, 2, 1, 0]
Input: [1, 11, 11, -1]
Output: [3, 2, 1, 3 ]
Input: [-1, 11, 1]
Output: [0, 2, 0]
Input: [1, 11, -1]
Output: [3, 2, 3 ]
δ¢
、よく使用された二重ベクトルを見たことがない、素敵なもの。