लंबे समय बाद पहली बार यहां पोस्टर लचर।
एक प्रोग्राम लिखें जो 3 इनपुट लेता है: एक्स, वाई और जेड।
- X = पार (कॉलम)
- Y = नीचे (पंक्तियाँ)
- Z = स्थान मार्कर
प्रोग्राम को तब एक दृश्य ग्रिड X को प्रिंट करना चाहिए और Y नीचे। यह ग्रिड "+" को छोड़कर किसी भी वर्ण का बनाया जा सकता है। प्रत्येक 'लोकेशन' को एक इंडेक्स नंबर दिया जाता है, जो कि 1 से 1 तक, 1 के पार और फिर अंत तक नीचे गिना जाता है।
X और Y हमेशा कम से कम 3 होंगे और Z कभी भी इससे बड़ा नहीं होगा X * Y।
Z उस स्थान का प्रतिनिधित्व करेगा जो "+" के रूप में मुद्रित किया गया है, स्थान पर और साथ ही 1 वर्ण बाएँ, दाएँ, ऊपर और नीचे। उदाहरण के लिए:
+
+++
+
अंत में, अगर + अक्षर किनारों (सबसे ऊपर, सबसे बाएं, दाएं सबसे अधिक और / या सबसे नीचे वाले किनारे) को रोकते हैं, तो + को उसी अक्ष पर वापस उछालना चाहिए और दूसरी तरफ ओवरफ्लो करना चाहिए।
उदाहरण: इनपुट = ५, ५, १३
-----
--+--
-+++-
--+--
-----
इनपुट = 10, 10, 10
-------+++
---------+
---------+
----------
----------
----------
----------
----------
----------
----------
इनपुट = 10, 10, 21
----------
+---------
+++-------
+---------
----------
----------
----------
----------
----------
----------
संपादित करें: गैर वर्ग उदाहरण 16,3,32
---------------+
-------------+++
---------------+
मुझे लगता है कि मैंने सब कुछ कवर कर लिया है। इनपुट की कोई सीमा नहीं होनी चाहिए, लेकिन यदि आपके प्रोग्राम की आवश्यकता है, तो इसे 64 * 64 पर कैप करें।
बोनस बिंदु (क्या मैं ऐसा कर सकता हूं?): इनपुट Z> X * Y नहीं होना चाहिए, लेकिन यदि यह Y * Z से बड़ा है, तो केंद्र + को ग्रिड के मध्य में आउटपुट करें।
EDIT: इनपुट Z X * Y से बड़ा नहीं हो सकता
2 संपादित करें:। X और Y में कुछ बदलाव करके उम्मीद की जा सकती है कि यह स्पष्ट हो
यह कोड गोल्फ, सबसे छोटा कोड जीत है।