আমরা সকলেই বিভিন্ন অভিনব বাছাই করা অ্যালগরিদম সম্পর্কে জানি, তবে এর মধ্যে কোনটিই আমাদের উচ্চারণ করতে সহজ এমনভাবে সংখ্যা দেয় না। এর প্রতিকারের জন্য, আমি সংখ্যার তালিকাগুলি বাছাই করার সবচেয়ে প্রাকৃতিক উপায় হ'ল উচ্চারণসোর্ট using ব্যবহার করার প্রস্তাব দিই।
উচ্চারণ
সংখ্যার উচ্চারণের সরকারী নিয়মগুলি (এই চ্যালেঞ্জে) হ'ল অঙ্কগুলি একে একে উচ্চারণ করা হয় এবং ফলস্বরূপ স্ট্রিংটি অভিধানিক ক্রমে সাজানো হয়। উদাহরণ হিসাবে, এর অর্থ হল যে নম্বরটি 845
উচ্চারণ করা হয়েছে "eight four five"
, এবং সেই অনুসারে বাছাই করা উচিত।
Gণাত্মক সংখ্যা
নেতিবাচক সংখ্যাগুলি শব্দটি প্রেরণের মাধ্যমে উচ্চারণ করা হয় "minus"
। সুতরাং, -23
হিসাবে উচ্চারণ করা হয় "minus two three"
। নোট করুন যে এর ফলে আউটপুটটির মাঝামাঝি সময়ে নেগেটিভ সংখ্যাগুলি শেষ হতে পারে, ডানদিকে 4
(চার) এবং 9
(নয়) দিয়ে শুরু হওয়া সংখ্যার মধ্যে ।
গাইড হিসাবে, উচ্চারণ শর্ট for এর শব্দের সরকারী ক্রমটি হ'ল:
- আট
- পাঁচ
- চার
- ঋণচিহ্ন
- নয়
- এক
- সাত
- ছয়
- তিন
- দুই
- শূন্য
এটাই,
8, 5, 4, -, 9, 1, 7, 6, 3, 2, 0
ইনপুট
সর্বাধিক 100 টি উপাদান থাকা ব্যাপ্তি এর পূর্ণসংখ্যার একটি তালিকা । স্ট্রিংগুলির তালিকা হিসাবে ইনপুট অনুমোদিত নয়। যদি আপনার ভাষা তালিকা হিসাবে ইনপুট সমর্থন করে না, তবে পৃথক পূর্ণসংখ্যার হিসাবে ইনপুট দেওয়া অনুমোদিত।
ইনপুটটিতে কোনও অবৈধ সংখ্যা বা 0 দিয়ে শুরু হওয়া কোনও সংখ্যা থাকবে না (কেবল 0 নম্বর বাদে)। ইনপুটটি সাধারণত সাজানো হবে না, এটি কোনও ক্রমে দেওয়া যেতে পারে।
আউটপুট
উচ্চারণ শর্ট S ক্রমে একই পূর্ণসংখ্যা। নোট করুন যে বাছাইয়ের জন্য সংখ্যাগুলি কেবল তাদের উচ্চারণে রূপান্তর করা উচিত, আউটপুটটিতে কোনও স্ট্রিং থাকা উচিত নয়।
উদাহরণ
উদাহরণস্বরূপ, মধ্যবর্তী পদক্ষেপ (প্রথম বন্ধনীতে আবৃত) কেবল গাইড হিসাবে কাজ করে, এবং আউটপুটটির অংশ নয়।
[1, 2, 3] -> (['one', 'two', 'three']) -> [1, 3, 2]
[-1, 0, 1, 2] -> (['minus one', 'zero', 'one', 'two']) -> [-1, 1, 2, 0]
[-100, 45, 96] -> (['minus one zero zero', 'four five', 'nine six']) -> [45, -100, 96]
[11, 12, 13, 134, 135] -> (['one one', 'one two', 'one three', 'one three four', 'one three five']) -> [11, 13, 135, 134, 12]