এটি থেকে অনুপ্রাণিত (ব্যাখ্যাটি চুরির সাথে) এটি
পটভূমি
বলুন আপনার দুটি তালিকা 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_i
i
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]
এর কারণ হ'ল False
আমরা B
25 এবং 5 এর মধ্যে পুনরায় অর্ডার করতে পারি না A
তবে কেবলমাত্র বিভাজকটি B
5 হবে তাই একটিকে বাদ দেওয়া হবে।
তোমার কাজ
আপনার কাজটি অবশ্যই দুটি নির্ধারণ (ইনপুট হিসাবে দেওয়া) সম্ভাব্য বিভাজ্য কিনা তা নির্ধারণ করা। আউটপুট হিসাবে আপনি কোনও স্বীকৃত পদ্ধতিতে ইনপুট নিতে পারেন।
তালিকাগুলির নকলগুলি একটি সম্ভাবনা এবং পূর্ণসংখ্যার উপর একমাত্র আকারের বিধিনিষেধগুলি হ'ল আপনার ভাষা। উভয় তালিকার সমস্ত পূর্ণসংখ্যা 0 এর চেয়ে বড় হবে এবং উভয় তালিকা সমান আকারের হবে।
সমস্ত সিদ্ধান্ত-সমস্যার মতোই আউটপুট মানগুলি অবশ্যই 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