একটি *()[]
ধনুর্বন্ধনী স্ট্রিং এমন অক্ষর সমন্বিত একটি স্ট্রিং হিসাবে সংজ্ঞায়িত করা হয় যেখানে ব্রেসগুলি সঠিকভাবে মেলে:
[brace-string] ::= [unit] || [unit] [brace-string]
[unit] ::= "" || "*" || "(" [brace-string] ")" || "[" [brace-string] "]"
এটি একটি বৈধ ব্রেস-স্ট্রিং:
((())***[]**)****[(())*]*
তবে এগুলি নয়:
)(
**(**[*](**)
**([*)]**
আপনার টাস্কটি এমন কোনও প্রোগ্রাম (বা ফাংশন) লিখতে হয় যা ইতিবাচক পূর্ণসংখ্যা দেওয়া হয় n
, একটি সংখ্যা ইনপুট হিসাবে নেয় এবং দৈর্ঘ্যের সমস্ত বৈধ ব্রেস স্ট্রিংগুলি আউটপুট (বা প্রত্যাবর্তন) হিসাবে নেয় n
।
বিশেষ উল্লেখ
- আপনি যে কোনও ক্রমে স্ট্রিংগুলি আউটপুট দিতে পারেন।
- আপনি তালিকা বা স্ট্রিং হিসাবে আলাদা অক্ষর দ্বারা পৃথক আউটপুট করতে পারেন।
- আপনার প্রোগ্রাম অবশ্যই 0 সঠিকভাবে পরিচালনা করতে হবে। দৈর্ঘ্যের 0 টি ব্রেস-স্ট্রিং রয়েছে, যা খালি স্ট্রিং
""
। - এটি কোড-গল্ফ , তাই সংক্ষিপ্ততম বৈধ উত্তর - বাইটে পরিমাপ করা - জয়।
পরীক্ষার কেস
0.
1. *
2. ** () []
3. *** ()* []* (*) [*] *() *[]
4. **** ()** []** (*)* [*]* (**) **() **[] *(*) *[*] (()) ()() ()[] ([]) [**] [()] [[]] []() [][] *()* *[]*