একটি স্ট্রিং দেওয়া হয়েছে যা সম্ভাব্যভাবে বাক্সে রয়েছে, বাক্সটি টগল করুন। এটি পরীক্ষার কেস এবং ব্যাখ্যাগুলিতে আরও স্পষ্ট হয়ে ওঠে।
ইনপুট আউটপুট
ছক পূরণ করা
ইনপুটটি হয় সিআর, এলএফ, বা সিআরএলএফ দ্বারা বিভক্ত একক স্ট্রিং বা স্ট্রিংয়ের একটি তালিকা। ইনপুট ফর্ম্যাটটি সিদ্ধান্ত নিতে আপনার উপর নির্ভর করে।
আউটপুট ফরমেট
আউটপুট ফর্ম্যাটটি অবশ্যই ইনপুট হিসাবে একই ফর্ম্যাটে থাকতে হবে।
ব্যাখ্যা + উদাহরণ
উদাহরণস্বরূপ একটি বাক্সযুক্ত স্ট্রিং নেওয়া যাক:
+-------------+
|Hello, World!|
+-------------+
বাক্সটি টগল করতে, আমরা প্রথম এবং শেষ সারি এবং প্রথম এবং শেষ কলামটি সরিয়ে ফেলি। আপনি ধরে নিতে পারেন যে শেষ লাইনের পরে কোনও শেষের শ্বেত স্পেস থাকবে না (শেষ লাইনের শেষে alচ্ছিক ট্রেলিং নিউলাইন সহ) এবং কোনও লাইনে কোনও পেছনের শ্বেত স্পেস থাকবে না, অবশ্যই নতুন লাইনের গণনা করা হবে না।
এটি হয়ে যাবে:
Hello, World!
অন্যান্য উপায়
স্ট্রিং যদি না একটি বাক্সে, এটি একটি বক্স যোগ করুন। এটি মোটামুটি সহজ; শুরুতে যোগ +---...---+দিয়ে তার নিজস্ব লাইনে kড্যাশ যেখানে kপ্রতিটি লাইনে জন্য দীর্ঘতম লাইনের দৈর্ঘ্য হল, এবং তারপর, trailing হোয়াইটস্পেস শুরুতে যোগ দীর্ঘতম লাইনের দৈর্ঘ্য মেলে এবং তারপর একটি নল চরিত্র সংযোজন সঙ্গে প্যাড এটা ( "|")। শেষ অবধি +---...---+, প্রথম লাইনের সমান সেটআপযুক্ত একটি লাইন যুক্ত করুন ।
উদাহরণ স্বরূপ:
Hello, World!
হয়ে:
+-------------+
|Hello, World!|
+-------------+
আপনি ধরে নিতে পারেন যে ইনপুটটির কোনও রেখায়ই সাদা সাদা স্থান থাকবে না।
স্ট্রিংয়ের আরেকটি উদাহরণ যা তার চারপাশে একটি বাক্স রাখা উচিত:
Hello,
World!
হয়ে
+----------+
|Hello, |
| World!|
+----------+
এমন কিছুর উদাহরণ যা এখনও বাক্সে রাখা উচিত:
+--------+
| |
--------+
হয়ে:
+----------+
|+--------+|
|| ||
| --------+|
+----------+
বিধি + বিশেষ উল্লেখ
- স্ট্যান্ডার্ড লুফোলস প্রয়োগ করুন
- ইনপুটটির কোনও লাইনেই বাক্সবিন্যাস করা হয়েছে কিনা তা নির্বিশেষে সামগ্রিকভাবে এবং প্রতিটি লাইনে কোনও নেতৃস্থানীয় বা চলমান শ্বেতস্পেস থাকবে না
- বাক্সগুলির কেবল
+তাদের কোণ হিসাবে এবং|উল্লম্ব প্রান্তগুলির-জন্য এবং অনুভূমিক পক্ষগুলির জন্য থাকবে। - বাক্স হিসাবে বিবেচিত হওয়ার জন্য একটি বাক্সের অবশ্যই তার প্লাসগুলি থাকতে হবে; যদি এটির উচ্চতা বা প্রস্থ 2 (এটি কোনও সামগ্রী নয়) থাকে তবে এটি এখনও বাক্সবিন্যাস করা উচিত যা বাক্সের উচ্চতার উপর নির্ভর করে একগুচ্ছ নিউলাইনগুলি তৈরি করে।
- যদি ইনপুটটিতে বাক্সের বাইরে একটি বাক্স থাকে তবে পাঠ্য থাকে তবে পুরো জিনিসটি বক্স করা উচিত।
- আপনার প্রোগ্রামটি অবশ্যই স্ট্রিংয়ের পুরো পরিধি পরীক্ষা করবে। যদি বাইরের একক অক্ষরটি সঠিক না হয় (হয় অনুপস্থিত বা এটির চেয়ে আলাদা চরিত্র) তবে এটি বাক্সবিন্যাস করা উচিত, আনবক্স করা উচিত নয়।
- আনবক্সযুক্ত স্ট্রিং এ নিজেই থাকতে পারে
+ | -। যদি আনবক্সড স্ট্রিংয়ের চারপাশে একটি বাক্স থাকে তবে বাক্সটি দিয়ে স্ট্রিংটি ফিরিয়ে দিন; এটি একবারে আনবক্স করা উচিত।
এজ কেস
1: ছোট বাক্স
ইনপুট:
++
++
আউটপুট একটি খালি বা একটি নতুন লাইন
ইনপুট:
+----+
+----+
আউটপুট খালি বা একটি নতুন লাইন
ইনপুট:
++
||
||
++
আউটপুট 2 নিউলাইন বা 3 টি নতুন লাইন
2: আংশিক বক্স
ইনপুট:
+-------+
| Hello |
+ ------+
আউটপুট:
+---------+
|+-------+|
|| Hello ||
|+ ------+|
+---------+
3: বাক্সের বাইরে পাঠ্য
ইনপুট:
+-------+
a| Hello |
+-------+
আউটপুট:
+----------+
| +-------+|
|a| Hello ||
| +-------+|
+----------+