আমি কিছুক্ষণের জন্য এই সাইটের চারপাশে ঘুরে বেড়াচ্ছি, তবে সম্প্রতি কিছুটা চ্যালেঞ্জের চেষ্টা করার জন্য সত্যিই আগ্রহী হয়ে উঠেছে। আমি বিদ্যমান কোড-গল্ফ সম্পর্কিত কয়েকটি বিষয় নিয়ে আমার হাত দেওয়ার চেষ্টা করছিলাম, তবে গতকাল আমার কাছে ইন্টারনেটের অ্যাক্সেস ছিল না এবং এর মধ্যে আমি আমার নিজের চ্যালেঞ্জটি ভেবেছিলাম।
আপনার কাজটি এমন একটি প্রোগ্রাম বা ফাংশন তৈরি করা যা ফ্লোট a
এবং একটি পূর্ণসংখ্যার অ্যারে নেয় n
, তারপরে প্রতিটি মানটিকে a
তার পাশাপাশি দুটি এর গড়তে সেট করে, n
বার। বারবার যখন ক্রমবর্ধমান মানগুলির সাথে ব্যবহার করা হয় তখন এটি n
একটি তরঙ্গের মতো গতি তৈরি করে:
সুনির্দিষ্ট:
- যদি সেখানে কেবলমাত্র একটি আইটেম থাকে
a
বা যদিn
0 বা তার চেয়ে কম হয় তবে প্রোগ্রামটির আসল অ্যারেটি ফিরিয়ে দেওয়া উচিত। - ইনপুট এবং আউটপুটগুলি আপনার ইচ্ছা মতো যে কোনও বিন্যাসে থাকতে পারে, যতক্ষণ না সেগুলি দৃশ্যত পৃথক হয়।
প্রতিটি পদক্ষেপের জন্য:
- প্রথম আইটেমটি
a
নিজের এবং পরবর্তী আইটেমের গড় হওয়া উচিত। - শেষ আইটেমটি
a
নিজের এবং পূর্ববর্তী আইটেমের গড় হওয়া উচিত। - অন্য যে কোনও আইটেমের
a
আগের আইটেম এবং পরবর্তী আইটেমের গড় হওয়া উচিত। - আপনি আগের ধাপের অ্যারে গণনা করছেন তা নিশ্চিত করুন এবং বর্তমানটি নয়!
পরীক্ষার কেস: দ্রষ্টব্য: আপনার ইনপুট / আউটপুটগুলি এই ফর্ম্যাটে থাকতে হবে না!
[0, 0, 1, 0, 0], 1 -> [0, 0.5, 0, 0.5, 0]
[0, 0, 1, 0, 0], 2 -> [0.25, 0, 0.5, 0, 0.25]
[0, 0, 1, 0, 0], 0 -> [0, 0, 1, 0, 0]
[0, 0, 1, 0, 0], -39 -> [0, 0, 1, 0, 0]
[0, 16, 32, 16, 0], 1 -> [8, 16, 16, 16, 8]
[0, 1, 2, 3, 4, 5], 1 -> [0.5, 1, 2, 3, 4, 4.5]
[0, 64], 1 -> [32, 32]
[0], 482 -> [0]
[32, 32, 32, 16, 64, 16, 32, 32, 32], 4 -> [33, 27, 40, 22, 44, 22, 40, 27, 33]
এটি কোড-গল্ফ , তাই বাইট জেতে সংক্ষিপ্ত উত্তর। এক সপ্তাহের মধ্যে বিজয়ী বাছাই করা হবে (২ আগস্ট)। শুভকামনা!
সম্পাদনা করুন: পুরোপুরি 18 বাইট সহ বিজয়ী, @ আইস্যাককে অভিনন্দন !
n
4 হতে হবে, 5 নয়
n
হ'ল সরবরাহ করাa
হয় না এবং সরবরাহ করা হয় না - এগুলি থেকে মুক্তি পাওয়ার জন্য - তারা আসলে বেশি কিছু দেয় না।