পটভূমি
আমার কাছে শক্তিশালী চৌম্বকগুলির একটি সারি এবং তাদের মধ্যে ধাতব বস্তুগুলির একটি গুচ্ছ রয়েছে। চুম্বকগুলি তাদের কোথায় টানবে?
ইনপুট
আপনার ইনপুটটি অ-নেতিবাচক পূর্ণসংখ্যার অ্যারে, যাতে কমপক্ষে একটি থাকবে 1
। আপনি যে কোনও যুক্তিসঙ্গত ফর্ম্যাট ব্যবহার করতে পারেন।
0
অ্যারের গুলি খালি জায়গা প্রতিনিধিত্ব, এবং 1
গুলি সংশোধন চুম্বক প্রতিনিধিত্ব করে। অন্য সমস্ত সংখ্যা হ'ল ধাতু বস্তু, যা চুম্বক দ্বারা টানা হয়। প্রতিটি বস্তু নিকটতম চৌম্বকের দিকে টানা হয় (যদি কোনও টাই থাকে তবে বস্তুটি ডানদিকে টানা হয়) এবং চুম্বক বা অন্য কোনও অবজেক্টটিকে আঘাত না করা পর্যন্ত এটি সেদিকে ভ্রমণ করে। শেষ পর্যন্ত, সমস্ত বস্তু চুম্বকের চারপাশে ক্লাস্টার হয়েছে। বস্তুর ক্রম সংরক্ষণ করা হয়।
আউটপুট
আপনার আউটপুটটি অ্যারে যেখানে প্রতিটি বস্তু যতটা সম্ভব নিকটতম চৌম্বকের কাছাকাছি টানা হয়েছিল। এটি ইনপুট হিসাবে একই বিন্যাস থাকা উচিত।
উদাহরণ
অ্যারে বিবেচনা করুন
[0,0,2,0,1,1,0,2,0,3,0,5,0,1,0]
বামদিকের 2
প্রথম চৌম্বকটি প্রথম দিকে টানা হয়, দ্বিতীয়টির মতো 2
। 3
একটি চুম্বক চার ধাপ উভয় নির্দেশাবলী মধ্যে দূরে আছে, তাই এটি ডানদিকে টানা হয়। 5
এছাড়াও ডানে টানা পরার, এবং এটি মধ্যে যায় 3
ও চুম্বকের। সঠিক আউটপুট হয়
[0,0,0,2,1,1,2,0,0,0,0,3,5,1,0]
বিধি এবং স্কোরিং
আপনি একটি সম্পূর্ণ প্রোগ্রাম বা একটি ফাংশন লিখতে পারেন। সর্বনিম্ন বাইট গণনা জয়, এবং মান লুফোলগুলি অনুমোদিত নয়।
পরীক্ষার মামলা
[0,1,0] -> [0,1,0]
[1,0,2,0,0,1,0] -> [1,2,0,0,0,1,0]
[7,0,5,0,0,1,0] -> [0,0,0,7,5,1,0]
[1,0,3,0,1,0,3,0,1] -> [1,0,0,3,1,0,0,3,1]
[1,0,0,0,0,0,0,7,3] -> [1,7,3,0,0,0,0,0,0]
[1,2,3,4,5,6,7,8,9,10,11,0,0,0,1] -> [1,2,3,4,5,6,7,0,0,0,8,9,10,11,1]
[12,3,0,0,1,0,1,3,0,0,6,12,0,0,0,1] -> [0,0,12,3,1,0,1,3,6,0,0,0,0,0,12,1]
1
একটি দুর্দান্ত ধারণা!