যদি আমরা একটি পাওয়ার সিরিজের সহগ হিসাবে সংখ্যার ক্রম লিখি, তবে সেই পাওয়ার সিরিজটিকে সেই অনুক্রমের (সাধারণ) উত্পন্ন ফাংশন (বা জিএফ) বলা হয়। এটি হ'ল যদি কিছু ফাংশন F(x)
এবং সিরিজের পূর্ণসংখ্যার জন্য a(n)
আমাদের কাছে থাকে:
a(0) + a(1)x + a(2)x^2 + a(3)x^3 + a(4)x^4 + ... = F(x)
তারপরে F(x)
হ'ল জেনারেটিং ফাংশন a
। উদাহরণস্বরূপ, জ্যামিতিক সিরিজ আমাদের জানায় যে:
1 + x + x^2 + x^3 + x^4 + ... = 1/(1-x)
সুতরাং উত্পাদক ফাংশন 1, 1, 1, ...
হয় 1/(1-x)
। যদি আমরা উপরের সমীকরণের উভয় দিককে পৃথক করি এবং x
আমরা নীচের সাম্যতাটি পাই:
x + 2x^2 + 3x^3 + 4x^4 + ... = x/(1-x)^2
সুতরাং উত্পাদক ফাংশন 1, 2, 3, ...
হয় x/(1-x)^2
। উত্পন্ন ফাংশন একটি খুব শক্তিশালী সরঞ্জাম, এবং আপনি তাদের সাথে অনেক দরকারী জিনিস করতে পারেন। একটি সংক্ষিপ্ত ভূমিকা এখানে পাওয়া যাবে , কিন্তু একটি সত্যই বিশদ ব্যাখ্যা জন্য সেখানে আশ্চর্যজনক বই উত্পন্নকরণের কাজ আছে।
এই চ্যালেঞ্জটিতে আপনি একটি যুক্তিযুক্ত ফাংশন (পূর্ণসংখ্যার সহগ সহ দুটি বহুভুজের ভাগফল) ইনপুট হিসাবে দুটি পূর্ণসংখ্যার গুণফলের অ্যারে হিসাবে ইনপুট হিসাবে গ্রহণ করবেন, প্রথমে সংখ্যার পরে ডিনোমিনেটর। উদাহরণস্বরূপ ফাংশনটি ইনপুট f(x) = x / (1 - x - x^2)
হিসাবে এনকোড করা হবে [0, 1], [1, -1, -1]
।
এই ইনপুটটি দেওয়া আপনার প্রোগ্রামটিকে অবশ্যই অসম্পূর্ণভাবে পাওয়ার সিরিজের সহগগুলি মুদ্রণ করতে হবে যা জেনারেটিং ফাংশনের সমান, প্রতি লাইনে একটি করে x
, তারপর x^2
, এর সহগ থেকে শুরু হবে etc.
উদাহরণ:
[1], [1, -1] -> 1, 1, 1, 1, 1, 1, 1, ...
[1], [2, -2] -> 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, ...
[0, 1], [1, -2, 1] -> 1, 2, 3, 4, 5, 6, 7, 8, ...
[0, 1], [1, -1, -1] -> 1, 1, 2, 3, 5, 8, 13, 21, 34, ...
[1], [1, -2] -> 1, 2, 4, 8, 16, 32, 64, 128, ...
[0, 1, 1], [1, -3, 3, -1] -> 1, 4, 9, 16, 25, 36, ...