कार्यकारी सारांश
यह देखते हुए कि इनपुट दो वैक्टर और उनके संबंधित "वेट" का प्रतिनिधित्व करता है, उत्पादन करता है जो उन वैक्टरों के भारित योग का भी प्रतिनिधित्व करता है।
चुनौती
इनपुट में निम्नलिखित वर्णों की एक या अधिक पंक्तियाँ होंगी:
- अंक 0 की ठीक एक घटना, जो दो-आयामी विमान में उत्पत्ति का प्रतिनिधित्व करती है;
- वास्तव में दो अन्य अंक (1-9; एक ही अंक हो सकते हैं या नहीं भी हो सकते हैं), जिनकी उत्पत्ति के सापेक्ष स्थितियां वैक्टर का प्रतिनिधित्व करती हैं, और जिनके मूल्य थ्रेड वैक्टर से जुड़े भार का प्रतिनिधित्व करते हैं;
- "पृष्ठभूमि वर्ण" की कुछ संख्या। सॉल्वर एक विशिष्ट पृष्ठभूमि चरित्र चुन सकता है; उदाहरण के लिए, मैं "का चयन करूंगा।" (ज्यादातर मानव पठनीयता के लिए)। वैकल्पिक रूप से, पृष्ठभूमि वर्ण कुछ भी हो सकते हैं जो रिक्त स्थान की तरह दिखते हैं।
(सॉल्वर यह चुन सकता है कि इनपुट एकल मल्टी-लाइन स्ट्रिंग है या एक-लाइन स्ट्रिंग का एक सरणी है।)
उदाहरण के लिए, इनपुट
....2
.0...
...3.
वजन 2 के साथ निर्देशांक (3,1) पर एक वेक्टर का प्रतिनिधित्व करता है, और वजन 3 के साथ निर्देशांक (2, -1) पर एक वेक्टर।
आउटपुट निम्न परिवर्तनों के साथ इनपुट के समान होना चाहिए:
- एक "परिणाम चरित्र", जिसे सॉल्वर द्वारा चुना जाता है, इनपुट वैक्टर के भारित योग द्वारा निर्दिष्ट स्थिति में जोड़ा जाना चाहिए (समकक्ष, उस स्थिति में जो इनपुट वैक्टर का उपयुक्त रैखिक संयोजन है);
- मूल, दो इनपुट वैक्टर और एक ही चित्र में आउटपुट वेक्टर को फिट करने के लिए जितने पृष्ठभूमि के पात्रों की आवश्यकता होती है। यदि वांछित हो तो अतिरिक्त पृष्ठभूमि पात्रों को शामिल किया जा सकता है; एकमात्र बाधा यह है कि, यदि पृष्ठभूमि चरित्र एक दृश्यमान चरित्र है, तो पूरे आउटपुट को आकार में आयताकार होना चाहिए और वेक्टर का प्रतिनिधित्व नहीं करने वाले प्रत्येक चरित्र को पृष्ठभूमि चरित्र होना चाहिए। (यदि रिक्त स्थान को पृष्ठभूमि वर्णों के रूप में उपयोग किया जाता है, तो इन बाधाओं को लागू करने की आवश्यकता नहीं है।)
(सामान्य तौर पर, अगर वजन के साथ एक वेक्टर (v, w) है और वजन b के साथ दूसरा वेक्टर (x, y) है, तो उनका भारित योग a (v, w) + b (x, y) = (av +) है bx, द्वारा aw +)।)
पिछले उदाहरण में, उपयुक्त रैखिक संयोजन 2 * (3,1) + 3 * (2, -1) = (12, -1) है। यदि हम परिणाम के रूप में "X" का उपयोग करते हैं, तो आउटपुट जैसा दिख सकता है
....2.........
.0............
...3.........X
या
................
...2............
0...............
..3.........X...
................
................
सामान्य कोड-गोल्फ स्कोरिंग: सबसे छोटा जवाब, बाइट्स में, जीतता है।
उदाहरण इनपुट और आउटपुट
यदि रिक्त स्थान का उपयोग किया जाता है, तो उपरोक्त इनपुट जैसा दिखेगा
2
0
3
और आउटपुट जैसा लगेगा
2
0
3 X
व्हाट्सएप के पात्र / अनुगामी / रेखाएं अप्रासंगिक हैं; यदि वे पाठक के लिए अदृश्य हैं, तो यह ठीक है। (यह कहा जा रहा है, बाकी उदाहरणों के लिए मैं बैकग्राउंड कैरेक्टर के लिए "" का उपयोग करके वापस जाऊंगा, इसे पढ़ना आसान बनाने के लिए।)
यदि दोनों वैक्टर का वजन 1 है, तो परिणाम एक समांतर चतुर्भुज की तरह दिखेगा: इनपुट
.1.
...
1.0
उत्पादन की ओर जाता है
X.1.
....
.1.0
ध्यान दें कि इस समांतर चतुर्भुज को पतित किया जा सकता है यदि इनपुट वैक्टर के संपर्क में न हों: इनपुट
0.1..1
उत्पादन की ओर जाता है
0.1..1.X
परिणाम वेक्टर के लिए इनपुट वैक्टर या मूल में से एक के बराबर करना संभव है; इस मामले में, यह केवल इनपुट चरित्र को ओवरराइट करता है। उदाहरण के लिए, इनपुट
..2.0.1...
पैदावार देता है
..X.0.1...
(जहां इनपुट और / या आउटपुट में, अग्रणी और अनुगामी अवधि को हटाया जा सकता है)। इनपुट
.....3
......
...0..
......
......
2.....
पैदावार देता है
.....3
......
...X..
......
......
2.....
अंत में, इनपुट
90
.8
पैदावार देता है
........90
.........8
..........
..........
..........
..........
..........
..........
X.........