এই চ্যালেঞ্জটি প্যানকেকস ফ্লিপিং সম্পর্কিত ।
আপনি প্যানকেক বাছাইয়ের কথা শুনে থাকতে পারেন , যেখানে প্যানকেকের স্ট্যাকটি স্ট্যাকের মধ্যে স্প্যাটুলা andুকিয়ে এবং স্প্যাটুলার উপরে সমস্ত প্যানকেকগুলি উল্টিয়ে মাপ অনুসারে বাছাই করা হয়, যতক্ষণ না প্যানটেকগুলি প্লেটের সবচেয়ে বড় থেকে ছোট থেকে ছোট বাছাই করা হয়। পোড়া প্যানকেক সমস্যাটি কিছুটা আলাদা। সমস্ত প্যানকেকের এখন একটি পাশ রয়েছে যা পুড়ে গেছে এবং বাছাই সম্পন্ন হওয়ার পরে প্রতিটি প্যানকেকের পোড়া পাশ অবশ্যই প্লেটের মুখোমুখি হবে।
উদাহরণস্বরূপ, নিম্নলিখিত স্ট্যাকটি দেওয়া হয়েছে (বামদিকে প্যানককের আকার 0
meaning যার অর্থ বার্ন-সাইড ডাউন এবং 1
অর্থ ডানদিকে বার্ন সাইড):
1 0
3 1
2 1
আপনি পেতে পুরো স্ট্যাকটি ফ্লিপ করতে পারেন 20 30 11
, পেতে শীর্ষ দুটি 31 21 11
ফ্লিপ করতে এবং পেতে পুরো স্ট্যাকটি আবার ফ্লিপ করতে পারেন 10 20 30
, পোড়া প্যানকেকগুলির একটি সাজানো স্ট্যাক। এই ক্রমের ক্রম 3, ফ্লিপ 3, ফ্লিপ 2, ফ্লিপ 3, হিসাবে উপস্থাপিত হতে পারে 3 2 3
।
চ্যালেঞ্জ
- প্যানকেক আকারের একটি অ্যারে দেওয়া (প্রয়োজনীয়ভাবে অনন্য নয়) এবং তাদের দিকনির্দেশনা, কোনও বৈধ পোড়া প্যানকেক বাছাইয়ের ক্রম আউটপুট দেয়, এটি হ'ল ফ্লিপগুলির একটি অনুক্রম যা প্যানকেকের স্তুপকে ছোট থেকে বৃহত্তম পর্যন্ত পোড়া পক্ষের সাথে সাজানো হয়।
- ইনপুট এবং আউটপুট বিভাজকগুলির সাথে কোনও বুদ্ধিমান ফর্ম্যাট হতে পারে তবে আপনি কোন ফর্ম্যাটগুলি ব্যবহার করবেন তা নির্দিষ্ট করুন এবং আপনার ইনপুট ফর্ম্যাটটির কোন শেষটি স্ট্যাকের (টিওএস) শীর্ষে রয়েছে তা উল্লেখ করুন।
- শূন্য প্যানকেকগুলি উল্টানোর অনুমতি রয়েছে।
- ইনপুট / আউটপুট মধ্যে বিভাজক মিশ্রিত অনুমোদিত।
পরীক্ষার মামলা
নিম্নলিখিত সমস্ত পরীক্ষার ক্ষেত্রে ইনপুট একটি তালিকা এবং আউটপুট একটি স্থান-বিভাজিত স্ট্রিং, এবং টিওএস বাম দিকে রয়েছে।
[[1, 0], [3, 1], [2, 1]]
"3 2 3"
[[5, 1], [3, 0], [4, 1], [2, 1], [1, 0]]
"5 3 4 1 3 2 1"
[[5, 1], [3, 0], [3, 0], [1, 1]]
"4 3 2 3"
সর্বদা হিসাবে, যদি কিছু অস্পষ্ট বা ভুল হয় তবে দয়া করে আমাকে মন্তব্যগুলিতে জানান। শুভকামনা এবং ভাল গল্ফিং!