আপনার অবশ্যই একটি প্রোগ্রাম বা ফাংশন লিখতে হবে যা বন্ধনীগুলির স্ট্রিং নেয় এবং সেই স্ট্রিং পুরোপুরি মেলে কিনা তা আউটপুট দেয়। আপনার প্রোগ্রামটি সত্যবাদী বা মিথ্যা মান প্রিন্ট করা উচিত এবং আইও যে কোনও যুক্তিসঙ্গত বিন্যাসে থাকতে পারে ।
বিধি এবং সংজ্ঞা:
এই চ্যালেঞ্জের উদ্দেশ্যে, একটি "বন্ধনী" এই অক্ষরের কোন হল:
()[]{}<>
।খোলার এবং বন্ধ করার বন্ধনীগুলি সঠিক ক্রমে থাকে এবং সেগুলির ভিতরে কোনও অক্ষর না থাকলে, একটি জোড়া বন্ধনী "মিলিত" হিসাবে বিবেচিত হয় as
() []{}
বা এর অভ্যন্তরে প্রতিটি প্রতিবিম্বের সাথে যদি মিলও হয়।
[()()()()] {<[]>} (()())
সুবলিমেন্টগুলি বেশ কয়েকটি স্তরকে গভীরভাবে নেস্ট করা যায়।
[(){<><>[()]}<>()] <[{((()))}]>
একটি স্ট্রিংকে "সম্পূর্ণ মিলিত" হিসাবে বিবেচনা করা হয় যদি এবং কেবল যদি:
প্রতিটি একক অক্ষর একটি বন্ধনী,
প্রতিটি বন্ধনী বন্ধনের সঠিক উদ্বোধন এবং বন্ধ বন্ধনী এবং সঠিক ক্রমে থাকে এবং
প্রতিটি বন্ধনী মিলছে।
আপনি ধরে নিতে পারেন ইনপুটটিতে কেবল প্রিন্টযোগ্য ASCII থাকবে ।
পরীক্ষা IO
এখানে এমন কিছু ইনপুট রয়েছে যা সত্যের মানটি ফিরিয়ে আনবে:
()
[](){}<>
(((())))
({[<>]})
[{()<>()}[]]
[([]{})<{[()<()>]}()>{}]
এবং এখানে এমন কিছু ফলাফল রয়েছে যা একটি মিথ্যা মানটি ফিরিয়ে আনবে:
( Has no closing ')'
}{ Wrong order
(<)> Each pair contains only half of a matched element
(()()foobar) Contains invalid characters
[({}<>)> The last bracket should be ']' instead of '>'
(((())) Has 4 opening brackets, but only 3 closing brackets.
যথারীতি এটি কোড-গল্ফ, সুতরাং মানক লুফোলগুলি প্রয়োগ হয় এবং বাইট জেতে সংক্ষিপ্ত উত্তর।
[}
একটি ম্যাচ? এবং যদি তা না হয় তবে এই বিধিগুলি দিয়ে এটি বাদ দেওয়া হয় কোথায়?
Each pair of brackets has the correct opening and closing bracket and in the right order.