(説明を盗まれた)これに触発された
バックグラウンド
2つのリストA = [a_1, a_2, ..., a_n]とB = [b_1, b_2, ..., b_n]整数のリストがあるとします。私たちは、言うAで潜在的に割り切れるでB存在する場合の順列Bことが可能a_iで割り切れるb_iすべてのためにi。問題は次のとおりです。すべてで割り切れるBように並べ替える(つまり、並べ替える)ことa_iは可能ですか?たとえば、あなたが持っている場合b_ii
A = [6, 12, 8]
B = [3, 4, 6]
そして、その答えは次のようになりますTrueよう、Bように並べ替えることができますB = [3, 6, 4]し、我々はそれを持っているだろうa_1 / b_1 = 2、a_2 / b_2 = 2と、a_3 / b_3 = 2整数であり、そのすべてが、そう、Aによって潜在的に割り切れますB。
出力すべき例としてFalse:
A = [10, 12, 6, 5, 21, 25]
B = [2, 7, 5, 3, 12, 3]
これは、25と5がinであるため、False再注文できないためです。ただし、唯一の除数は5なので、1つは省略されます。BAB
あなたのタスク
あなたの仕事は、明らかに、(入力として与えられた)2つのリストが潜在的に割り切れるかどうかを判断することです。出力と同様に、受け入れられた方法で入力を受け取ることができます。
リスト内の重複は可能性があり、整数のサイズ制限は言語のみです。両方のリストのすべての整数は0より大きくなり、両方のリストは同じサイズになります。
すべての決定問題と同様に、出力値はtrueとfalseを表す2つの異なる値でなければなりません。
これはコードゴルフなので、最短のコードが勝ちます!
テストケース
Input, input => output
[6, 12, 8], [3, 4, 6] => True
[10, 5, 7], [1, 5, 100] => False
[14, 10053, 6, 9] [1,1,1,1] => True
[12] [7] => False
[0, 6, 19, 1, 3] [2, 3, 4, 5, 6] => undefined