প্রতিটি প্রোগ্রামার জানে যে বন্ধনীগুলি []{}()<>
সত্যই মজাদার। এই মজাদারতা বাড়ানোর জন্য, আন্তঃ বোনা বন্ধনীগুলির গ্রুপগুলি কিউট এবং ম্লান চিত্রগুলিতে রূপান্তরিত হতে পারে।
আসুন বলে একটি স্ট্রিং, যাতে মত, সুষম বন্ধনী রয়েছে আছে [{][<(]})>(())
। প্রথম ধাপটি স্ট্রিংটিকে 45 ডিগ্রি ঘড়ির কাঁটার দিকে ঘোরানো। (ম্যাথমেটিকাতে এটি প্রায় সম্পন্ন করা যেতে পারে Rotate[ur_string,-pi/4]
)। এখানে প্রথম পদক্ষেপের ফলাফল:
[
{
]
[
<
(
]
}
)
>
(
(
)
)
পরবর্তী প্রতিটি অক্ষরের মধ্যে একটি তির্যক স্থান যুক্ত করুন।
[
{
]
[
<
(
]
}
)
>
(
(
)
)
এরপরে, বাম-সর্বাধিক বন্ধনী দিয়ে শুরু করুন এবং অপরাধে এটির এবং তার সহযোগীর মধ্যে একটি বর্গক্ষেত্র আঁকুন।
+---+
| |
| { |
| |
+---+
[
<
(
]
}
)
>
(
(
)
)
প্রতিটি জোড়া বন্ধনী দিয়ে এই প্রক্রিয়াটি পুনরাবৃত্তি করুন, +
প্রয়োজনে পূর্বের অক্ষরগুলিকে ওভাররাইট করে ।
+---+
| |
| +-+---------+
| | | |
+-+-+ |
| |
| [ |
| |
| < |
| |
| ( |
| |
| ] |
| |
+-----------+
)
>
(
(
)
)
যতক্ষণ না আপনি সবকিছু সুন্দর এবং বর্গক্ষেত্র না করে অবিরত থাকুন।
+---+
| |
| +-+---------+
| | | |
+-+-+ |
| |
| +-----+ |
| | | |
| | +---+-+---+
| | | | | |
| | | +-+-+-+ |
| | | | | | | |
| +-+-+-+ | | |
| | | | | |
+-----+-+---+ | |
| | | |
| +-----+ |
| |
+---------+
+-----+
| |
| +-+ |
| | | |
| +-+ |
| |
+-----+
ইনপুট
ইনপুটটি ভারসাম্য বন্ধনীর একক লাইন এবং অন্য কোনও অক্ষর হবে না, প্রতিটি বন্ধনী একটির সাথে []{}()<>
। প্রতিটি ধরণের বন্ধনী পৃথকভাবে সুষম হয়, যদিও বিভিন্ন ধরণের ওভারল্যাপ হতে পারে (এটি স্কোয়ারগুলি আকর্ষণীয় দেখায়)। একটি ট্রেলিং নিউলাইন optionচ্ছিক।
আউটপুট
আউটপুট হ'ল বন্ধনী স্ট্রিং থেকে উত্পন্ন ইন্টারলকিং স্কোয়ার প্যাটার্ন। ট্রেলিং স্পেস এবং ট্রেলিং নিউলাইন alচ্ছিক, তবে সেখানে শীর্ষস্থানীয় সাদা স্থান থাকতে হবে না।
লক্ষ্য
এটি কোড-গল্ফ, সবচেয়ে কম বাইট জেতা।
[[]]
আমরা দুটি স্কোয়ারকে ওভারল্যাপিং করে আউটপুট দিতে পারি বা আমাদের অন্যটির ভিতরে একটি বর্গাকার আউটপুট করতে হবে?