( কোড রিভিউ সম্পর্কিত একটি প্রশ্ন দ্বারা অনুপ্রাণিত )
ধরুন দু'জন লোক হ্যাঙ্গম্যান খেলছে , তবে আপনি কেবল খেলাটি শুনেছেন এবং বর্তমান অবস্থাটি আঁকতে চান।
ইনপুট হিসাবে দুটি শব্দ দেওয়া হয়েছে, যেখানে প্রতিটি শব্দ [A-Z]+
বা [a-z]+
আপনার পছন্দ অনুসারে শব্দগুলি নীচের নিয়মগুলি অনুসরণ করে হ্যাঙ্গম্যান গেমের বর্তমান অবস্থাকে ASCII আর্ট হিসাবে আউটপুট দেয়।
- প্রথম শব্দটি অনুমান করার শব্দ এবং দ্বিতীয় শব্দটি ইতিমধ্যে অনুমান করা অক্ষর। এগুলি কোনও ক্রমে ইনপুট হিসাবে নেওয়া যেতে পারে।
- অনুমান করা শব্দটি খালি খালি গ্যারান্টিযুক্ত, তবে ইতিমধ্যে অনুমান করা অক্ষরগুলি খালি থাকতে পারে (অর্থাত্, এটি খেলার শুরু)।
- গেমটি সর্বদা একটি বৈধ হ্যাঙ্গম্যান গেম হবে (যেমন, অনুমান করা অক্ষরগুলি সদৃশ হবে না, গেমের শেষের পরে বর্ণগুলি অনুমান করা হবে না, আপনি কেবল ইনপুট হিসাবে অক্ষর পাবেন) ইত্যাদি।
- হ্যাঙ্গম্যান অঙ্কনের নীচে অবশ্যই শব্দটি অনুমান করা উচিত,
_
অক্ষরের জায়গায় এখনও অজানা, ফাঁক দিয়ে পৃথক করা উচিত। উদাহরণস্বরূপ, যদি অনুমান করা শব্দটি হয়BOAT
তবে হ্যাঙ্গম্যান অঙ্কনের নীচে থাকা আবশ্যক_ _ _ _
। শব্দ হয়ে থাকে তাহলেBOAT
সঙ্গেA
অনুমিত, তারপর নিচের অঙ্কন করা আবশ্যক_ _ A _
। - শব্দ ইতিমধ্যে অনুমিত অক্ষর হওয়া আবশ্যক অনুমিত করা নীচে না শব্দে। এগুলি যে কোনও ক্রমে হতে পারে এবং কোনও ইচ্ছা অনুসারে যেকোন অ বর্ণানুক্রমিক বিভাজক দ্বারা পৃথক করা যায়।
এখানে প্রাথমিক শুরু থেকে গেমের শেষ পর্যন্ত হ্যাঙ্গম্যান গেমের রাজ্যগুলি। প্রতিটি ভুলভাবে অনুমান করা চিঠি একের পর এক রাষ্ট্রকে অগ্রসর করে। সুতরাং প্রথম ভুলভাবে অনুমিত অক্ষরটি মাথাটি O
উপস্থিত করে তোলে, পরবর্তীটি শরীরে |
উপস্থিত হয়, ইত্যাদি makes
+---+
| |
|
|
|
|
=========
+---+
| |
O |
|
|
|
=========
+---+
| |
O |
| |
|
|
=========
+---+
| |
O |
/| |
|
|
=========
+---+
| |
O |
/|\ |
|
|
=========
+---+
| |
O |
/|\ |
/ |
|
=========
+---+
| |
O |
/|\ |
/ \ |
|
=========
ইনপুট
- প্রথম গ্যারান্টিযুক্ত খালি খালি যেকোন সুবিধাজনক বিন্যাসে দুটি স্ট্রিং ।
- আপনি উভয় ক্রমে ইনপুট নিতে পারেন (উদাহরণস্বরূপ, অনুমানের শব্দ এবং তারপরে অনুমান করা অক্ষর বা তার বিপরীতে)। আপনার জমা দেওয়ার ইনপুট অর্ডার দয়া করে লিখুন।
আউটপুট
হ্যাঙ্গম্যান গেমের ফলস্বরূপ ASCII শিল্পের উপস্থাপনা, যেমন উপরে বর্ণিত হয়েছে, আবার কোনও সুবিধাজনক বিন্যাসে।
বিধি
- নেতৃস্থানীয় বা পিছনে থাকা নতুন লাইনের বা হোয়াইটস্পেসগুলি সমস্ত alচ্ছিক, যতক্ষণ না অক্ষরগুলি নিজেরাই সঠিকভাবে লাইন করে থাকে।
- হয় একটি সম্পূর্ণ প্রোগ্রাম বা একটি ফাংশন গ্রহণযোগ্য। যদি কোনও ফাংশন হয় তবে আপনি আউটপুটটি মুদ্রণের পরিবর্তে ফিরিয়ে দিতে পারেন।
- যদি সম্ভব হয় তবে দয়া করে একটি অনলাইন পরীক্ষার পরিবেশের একটি লিঙ্ক অন্তর্ভুক্ত করুন যাতে অন্য লোকেরা আপনার কোডটি চেষ্টা করে দেখতে পারে!
- স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ।
- এটি কোড-গল্ফ তাই সাধারণ গল্ফিংয়ের সমস্ত নিয়ম প্রয়োগ হয় এবং সংক্ষিপ্ততম কোড (বাইটে) জয়ী হয়।
উদাহরণ
# 1
BOAT
এবং ATG
+---+
| |
O |
|
|
|
=========
_ _ A T
G
# 2
ZEPPELIN
এবং
+---+
| |
|
|
|
|
=========
_ _ _ _ _ _ _ _
# 3
ZEPPELIN
এবং EATOLINSHR
+---+
| |
O |
/|\ |
/ \ |
|
=========
_ E _ _ E L I N
A T O S H R
# 4
RHYTHM
এবং ABCDE
+---+
| |
O |
/|\ |
/ |
|
=========
_ _ _ _ _ _
EDCBA
# 5
BOAT
এবং ATOB
+---+
| |
|
|
|
|
=========
B O A T
6 নম্বর
AIRPLANE
এবং AJKEI
+---+
| |
O |
| |
|
|
=========
A I _ _ _ A _ E
KJ