দ্বারা অনুপ্রাণিত একটি প্রশ্ন স্ট্যাক ওভারফ্লো এ ।
পূর্ণসংখ্যার x
একটি শূন্য খালি অ্যারে এবং ধনাত্মক পূর্ণসংখ্যা দেওয়া n
, অ্যারের পাশাপাশি দৈর্ঘ্যের প্রতিটি স্লাইডিং ব্লকের যোগফলটি গণনা করুন , বৃত্তাকারে অনুপস্থিত মানগুলি ডান থেকে মানগুলি নীচে নিম্নরূপে পূরণ করুন:n
x
- প্রথম ব্লকে প্রথম এন্ট্রি থাকে
x
, এর আগেn-1
বৃত্তাকারে স্থানান্তরিত এন্ট্রি থাকে; - দ্বিতীয় ব্লকে প্রথম এবং দ্বিতীয় এন্ট্রি থাকে
x
, এর আগেn-2
বৃত্তাকারে স্থানান্তরিত এন্ট্রি থাকে; ইত্যাদি।
আউটপুট অ্যারের y
সমান আকার রয়েছে x
। n
এর দৈর্ঘ্য অতিক্রম করা সম্ভব x
এবং তারপরে মানগুলির x
বৃত্তাকার সাথে বেশ কয়েকবার পুনরায় ব্যবহার করা হয় ।
উদাহরণ
উদাহরণ 1 (মানগুলি কেবল একবার পুনঃব্যবহার করা হয়)
x = [2, 4, -3, 0, -4]
n = 3
আউটপুট হিসাবে দিতে
y = [-2, 2, 3, 1, -7]
কোথায়
-2
ব্লকের যোগফল[0, -4, 2]
(প্রথম দুটি মান বিজ্ঞপ্তি স্থানান্তর থেকে আসে)2
যোগফল[-4, 2, 4]
(প্রথম মানটি বিজ্ঞপ্তি স্থানান্তর থেকে আসে)3
এর যোগফল[2, 4, -3]
(আর কোনও বিজ্ঞপ্তি স্থানান্তরকরণের দরকার নেই)1
এর যোগফল[4, -3, 0]
-7
এর যোগফল[-3, 0, -4]
।
উদাহরণ 2 (মানগুলি বেশ কয়েকবার পুনরায় ব্যবহৃত হয়)
x = [1, 2]
n = 5
দিতে
y = [7, 8]
কোথায়
7
এই ব্লকের যোগফল[1, 2, 1, 2, 1]
(প্রথম চারটি মান বৃত্তাকারে আবার ব্যবহার করা হয়েছে)8
ব্লকের যোগফল[2, 1, 2, 1, 2]
(প্রথম তিনটি মান বৃত্তাকারে পুনরায় ব্যবহার করা হয়েছে)
অতিরিক্ত বিধি
- অ্যালগরিদমটি স্বেচ্ছাচারিত আকারের অ্যারেগুলির জন্য এবং স্বেচ্ছাসেবী পূর্ণসংখ্যার মানগুলির জন্য কাজ করা উচিত। প্রোগ্রামটি ডেটা টাইপ বা মেমরির বিধিনিষেধের দ্বারা সীমাবদ্ধ থাকলে এটি গ্রহণযোগ্য; তবে ইতিবাচক পাশাপাশি নেতিবাচক পূর্ণসংখ্যার মানগুলি অবশ্যই পরিচালনা করতে হবে।
- ইনপুট / আউটপুট যে কোনও যুক্তিসঙ্গত উপায়ে নেওয়া / উত্পাদন করা যেতে পারে ।
- কোনও প্রোগ্রামিং ভাষায় প্রোগ্রাম বা ফাংশন অনুমোদিত । স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ।
- বাইটস মধ্যে সংক্ষিপ্ত কোড।
পরীক্ষার মামলা
x, n, -> y
[2, 4, -3, 0, -4], 3 -> [-2, 2, 3, 1, -7]
[1, 2], 5 -> [7, 8]
[2], 7 -> [14]
[-5, 4, 0, 1, 0, -10, -4], 4 -> [-19, -15, -5, 0, 5, -9, -13]
[-5, 4, 0, 1, 0, -10, -4], 1 -> [-5, 4, 0, 1, 0, -10, -4]
[-2, -1, 0, 1, 2, 3], 5 -> [4, 3, 2, 1, 0, 5]
[-10, 0, 10], 4 -> [-10, 0, 10]