এটি শীঘ্রই আমার বন্ধুর জন্মদিন এবং তিনি যেহেতু একজন প্রোগ্রামার এবং এএসসিআইআই আর্ট প্রেমী, আমি ভেবেছিলাম আমি তাকে কিছু ASCII কেক তৈরি করব!
দুঃখের বিষয়, আমি তাঁর বর্তমান বয়সটি ভুলে যেতে থাকি, তাই আমি আমার এএসসিআই ওভেনের জন্য একটি প্রোগ্রাম রাখতে চাই, এটি একটি নির্দিষ্ট সংখ্যক মোমবাতি সহ একটি কেককে বেক করে তোলে, তাই আমি যদি আমার সাথে ভুল করে থাকি তবে নিজেকে আবার এটি করতে হবে না his বয়স।
এএসসিআইআই ওভেনগুলির কেবলমাত্র সীমাবদ্ধ মেমরি এবং সঞ্চয় ক্ষমতা রয়েছে তাই এটি খুব কম বাইট ব্যবহার করা উচিত ।
তোমার কাজ:
কনসোলটিতে জন্মদিনের কেক আউটপুট দেয় এমন একটি প্রোগ্রাম লিখুন, যত ইনপুট নির্দিষ্ট করে দেয়।
পিষ্টক প্রয়োজনীয়তা হ'ল:
- এর একটি সীমানা থাকতে হবে, আনুভূমিক
-এবং উল্লম্ব|লাইন এবং উল্লম্ব দ্বারা নির্মিত+। - কমপক্ষে ৫ টি অক্ষর প্রশস্ত (কেক সীমানা সহ
|) - কমপক্ষে ৫ টি অক্ষর উচ্চ (কেক সীমানা সহ
-) - সেই জায়গাতে
কোনও শিখা না থাকলে কেকের সীমানা এবং প্রথম মোমবাতি-বেস (শিখা নয়) এর প্রতিটি অংশের মধ্যে একটি সাদা জায়গা থাকতে হবে। একটি শিখা বা মোমবাতি-বেস কেক সীমানা ওভারল্যাপ করতে সক্ষম হবে না। - কেকের সর্বোচ্চ প্রস্থটি 9 টি অক্ষর, সুতরাং সারি প্রতি সর্বাধিক 5 মোমবাতি থাকে।
- যেহেতু আমরা চাই না যে আমাদের কেকটি দ্বি-মাত্রিক হয়, তাই এটির কিছুটা ভলিউম দেওয়ার জন্য এটি অতিরিক্ত 2 সারি উঁচু হতে হবে। নীচে অন্য সীমানা যুক্ত করুন এবং উপরে (
-,|এবং+) থেকে আবার ASCII অক্ষর ব্যবহার করে উপরের অংশগুলির সাথে শীর্ষগুলি সংযুক্ত করুন ।
মোমবাতি প্রয়োজনীয়তা:
- বেস
|এবং শিখা*নিয়ে আগুনের শিখাটি বেসের শীর্ষে সজ্জিত থাকে। - মোমবাতিগুলি তির্যক বাদে সরাসরি অন্যের সাথে সংলগ্ন নাও হতে পারে।
- মোমবাতি সর্বাধিক এক লাইনে 5 দিয়ে বাম থেকে ডানদিকে শীর্ষে থেকে নীচে স্থাপন করা হয়।
(দ্রষ্টব্য: পূর্ববর্তী সারিতে যদি 5 টি মোমবাতি থাকে তবে পরবর্তী সারিতে 5 টি পাশাপাশি থাকতে পারে না, তখন থেকে তারা সংলগ্ন হবে be)
অতিরিক্ত নোট:
- কেকের প্রস্থটি প্রথম সারিতে মোমবাতির সংখ্যার উপর নির্ভর করে , তবে এটি সর্বনিম্ন 5 টি অক্ষর এবং সর্বাধিক 9 অক্ষর প্রস্থ হতে হবে।
- মোমবাতিগুলি শীর্ষে সারি থেকে শুরু করে বাম থেকে ডানে চলে গেছে in একবারে এক সারি পূর্ণ হলে পরেরটি প্রথমটির নীচের সারিতে শুরু করা উচিত।
ইনপুট:
আপনি নিজের পছন্দ মতো (যুক্তিসঙ্গত) ফর্ম্যাটটিতে একটি সংখ্যা গ্রহণ করতে পারেন।
এই চ্যালেঞ্জের জন্য আপনি ধরে নিতে পারেন যে সংখ্যাটি 0 থেকে 2 31 এর মধ্যে (0 সহ নয়), যদিও আমি এই বয়স্ক কাউকে স্বীকার করি না।
আউটপুট:
হয় আপনি কোনও স্ট্রিং ফিরিয়ে দিতে পারেন বা ফলাফলের পিষ্টকে সরাসরি আউটপুট কনসোলে লিখতে পারেন।
নিয়মাবলী:
উদাহরণ:
ইনপুট: 8
+-----------+
| * * * * * |
| |*|*|*| | |
| | | | |
| |
+-----------+
| |
+-----------+
ইনপুট: 2
+-----+
| * * |
| | | |
| |
+-----+
| |
+-----+
ইনপুট: 12
+-----------+
| * * * * * |
| |*|*|*|*| |
| *|*|*| | |
| | | | |
| |
+-----------+
| |
+-----------+
শুভকামনা!