আপনার এমন একটি প্রোগ্রাম বা ফাংশন লিখতে হবে যা পৃথক এক-অঙ্কের ধনাত্মক পূর্ণসংখ্যার শুরুর ক্রম এবং ট্র্যাকের দৈর্ঘ্যকে ইনপুট আউটপুট হিসাবে দেয় বা সংখ্যার ফিনিস অর্ডার দেয়।
ইনপুট [5,1,2,6,7] and 14
নিম্নলিখিত বর্ণটিকে সংজ্ঞায়িত করে:
--------------
76215 ->
--------------
দৌড় নিয়ম
- ট্র্যাকটি চারপাশে মোড়ানো এবং অঙ্কগুলি একাধিক কোলে যেতে পারে।
- পদক্ষেপের ক্রমটি চক্রযুক্ত এবং শুরুর অবস্থানের ভিত্তিতে। আমাদের উদাহরণে
5 1 2 6 7 5 1 2 ...
। - একই পজিশনে একাধিক সংখ্যা থাকতে পারে না।
প্রতিটি
digit_value
অঙ্কে প্রতি ধাপে ঘরের একটি গতি থাকে। একটি অঙ্ক ছাড়িয়ে যাওয়া বা অঙ্কের অবিচ্ছিন্ন অবরুদ্ধকরণের জন্য একটি অতিরিক্ত পদক্ষেপ ব্যয় হয়। অঙ্কটির যদি এর জন্য প্রয়োজনীয় গতি না থাকে তবে এটি অঙ্ক (অঙ্ক) এর আগে বন্ধ হয়ে যাবে। উদাহরণ:[41 ] => [ 1 4 ] 4 overtakes 1 [2 1 ] => [ 21 ] 2 can only move 1 as it can't move 3 to overtake 1 [4 12 ] => [ 412 ] 4 can only move 1 as it can't move 5 to overtake 12 [ 3 ] => [ 3 ] 3 starting a new lap
প্রতিটি অঙ্ক
digit_value
শেষ হওয়ার আগেই কোলে যেতে হয় । ট্র্যাকের শেষ কক্ষটি ছেড়ে গেলে একটি কোল শেষ হয়। একটি সমাপ্ত অঙ্কটি ট্র্যাক থেকে সরানো হয়েছে।- নোট করুন যে কোনও অঙ্কটি কোনও পদক্ষেপের মাধ্যমে একাধিকবার তার শুরুতে পৌঁছতে পারে এবং একাধিক ল্যাপগুলি সম্পূর্ণ করতে পারে complete
ইনপুট
1..9
কমপক্ষে একটি উপাদান এবং একক ধনাত্মক পূর্ণসংখ্যা সহ স্বতন্ত্র এক-অঙ্কের ধনাত্মক পূর্ণসংখ্যার ( ) তালিকা, তালিকার দৈর্ঘ্য, ট্র্যাকের দৈর্ঘ্যের চেয়ে বেশি।
আউটপুট
- তারা যে কোনও দ্ব্যর্থহীন বিন্যাসে শেষ হয়েছে ক্রমের অঙ্কগুলির একটি তালিকা।
উদাহরণ
ইনপুটটির জন্য একটি ভিজ্যুয়াল ধাপে ধাপে উদাহরণ starting_order = [5,9,2] and length = 6
295 | Start position
29 5| digit 5 moves
2 9 5| digit 9 moves, finishing lap #1
29 5| digit 2 moves
529 | digit 5 moves, finishing lap #1
52 9| digit 9 moves, finishing lap #2
5 29| digit 2 moves
529| digit 5 moves
9 52 | digit 9 moves, finishing laps #3 and #4
29 5 | digit 2 moves, finishing lap #1
29 5| digit 5 moves
2 9 5| digit 9 moves, finishing lap #5
29 5| digit 2 moves
529 | digit 5 moves, finishing lap #2
52 9| digit 9 moves, finishing lap #6
5 29| digit 2 moves
529| digit 5 moves
9 52 | digit 9 moves, finishing laps #7 and #8
9 5 | digit 2 moves, finishing lap #2 --> remove 2 from the track
59 | digit 5 moves, finishing lap #3
5 | digit 9 moves, finishing lap #9 --> remove 9 from the track
5| digit 5 moves
5 | digit 5 moves, finishing lap #4
| digit 5 moves, finishing lap #5 --> remove 5 from the track
------
Finish order: 2 9 5
ফর্ম্যাট উদাহরণ Input => Output
[3], 2 => [3]
[9, 5], 3 => [9, 5]
[5, 9, 2], 6 => [2, 9, 5]
[5, 9, 2], 10 => [5, 9, 2]
[5, 7, 8, 1, 2], 10 => [1, 5, 7, 8, 2]
[5, 1, 6, 8, 3, 2], 17 => [1, 6, 8, 2, 3, 5]
[1, 2, 3, 7, 8, 9], 15 => [1, 7, 8, 9, 2, 3]
[9, 8, 7, 3, 2, 1], 15 => [8, 7, 9, 1, 2, 3]
[1, 2, 3, 4, 5, 6, 7, 8, 9], 20 => [1, 2, 3, 4, 5, 6, 7, 8, 9]
[9, 8, 7, 6, 5, 4, 3, 2, 1], 20 => [8, 7, 5, 9, 6, 1, 2, 4, 3]
এটি কোড-গল্ফ তাই সংক্ষিপ্ত এন্ট্রি জিততে পারে।