बोर्डगेम टेरा मिस्टिका में प्राथमिक संसाधनों, बिजली में से एक के लिए कुछ बहुत ही दिलचस्प मैकेनिक्स हैं। प्रत्येक खिलाड़ी किसी बैंक से बिजली प्राप्त करने और खर्च करने की इकाइयों के बजाय, खेल की शुरुआत ठीक 12 इकाइयों की शक्ति से करता है जो तीन "बाउल" में वितरित की जाती हैं, जिन्हें I, II और III लेबल दिया जाता है। प्राप्त करने और खर्च करने की शक्ति तो बस इन कटोरे के बीच शक्ति को स्थानांतरित करती है:
- बिजली की एक इकाई खर्च करने के लिए, इसे बाउल III से कटोरे I में स्थानांतरित करें (बशर्ते आपके पास कटोरे III में एक इकाई है)।
- जब आप शक्ति की एक इकाई प्राप्त करते हैं, अगर कटोरे I में एक इकाई होती है, तो इसे कटोरी II में स्थानांतरित करें। यदि कटोरी I में कोई इकाइयाँ नहीं हैं, लेकिन कटोरे II में एक इकाई है, तो इसे III में कटाव करें। यदि सभी इकाइयां पहले से ही कटोरे III में हैं, तो कुछ भी नहीं होता है।
- जब आप एक साथ कई इकाइयाँ प्राप्त या खर्च करते हैं, तो उन्हें एक समय में एक इकाई संसाधित किया जाता है।
यहाँ एक उदाहरण है। कहते हैं, एक खिलाड़ी निम्नलिखित बिजली वितरण के साथ शुरू होता है (क्रम में दिया गया I | II | III
):
5 | 7 | 0
उनकी शक्ति में परिवर्तन इस प्रकार होता है जैसे वे कुछ समय के लिए सत्ता प्राप्त करते हैं और खर्च करते हैं:
5 | 7 | 0
Gain 3 ==> 2 | 10 | 0
Gain 6 ==> 0 | 8 | 4 (move 2 power from I to II,
then the remaining 4 from II to III)
Gain 7 ==> 0 | 1 | 11
Spend 4 ==> 4 | 1 | 7
Gain 1 ==> 3 | 2 | 7
Spend 7 ==> 10 | 2 | 0
Gain 12 ==> 0 | 10 | 2 (move 10 power from I to II,
then the remaining 2 from II to III)
Gain 12 ==> 0 | 0 | 12 (the two excess units go to waste)
आपका कार्य इस तरह के एक लाभ या घटना के परिणाम की गणना करना है।
चुनौती
आपको इनपुट के रूप में चार पूर्णांक दिए गए हैं। पहले तीन, I
, II
, III
, शक्ति की मात्रा तीन कटोरे में से प्रत्येक में प्रतिनिधित्व करते हैं। वे गैर-नकारात्मक होंगे, और वे 12 को योग करेंगे। चौथा नंबर, P
शक्ति प्राप्त या खर्च की गई राशि है, और समावेशी श्रेणी में होगा [-III, 24]
(इसलिए आप मान सकते हैं कि खिलाड़ी कभी भी अधिक शक्ति खर्च करने की कोशिश नहीं करेगा। वर्तमान में वे कर सकते हैं, लेकिन वे अधिक शक्ति प्राप्त कर सकते हैं, क्योंकि उन्हें सभी शक्ति को कटोरे III में स्थानांतरित करने की आवश्यकता है)।
पूर्णांक की सूची के रूप में, या पूर्णांक वाले स्ट्रिंग के रूप में आप इन संख्याओं को किसी भी सुसंगत क्रम में ले सकते हैं। तुम भी ले जा सकते हैं P
के रूप में, एक तर्क के रूप में I
, II
, III
एक अलग सूची तर्क के रूप में।
आपको तीन पूर्णांकों का उत्पादन करना चाहिए , जो यूनिटों के प्राप्त होने या खर्च होने के बाद प्रत्येक कटोरे में बिजली की मात्रा का प्रतिनिधित्व करते हैं I'
, ऊपर वर्णित नियमों का पालन करते हुए।II'
III'
P
आप एक प्रोग्राम या फ़ंक्शन लिख सकते हैं और इनपुट प्राप्त करने और आउटपुट प्रदान करने के हमारे किसी भी मानक तरीके का उपयोग कर सकते हैं।
आप किसी भी प्रोग्रामिंग भाषा का उपयोग कर सकते हैं , लेकिन ध्यान दें कि इन खामियों को डिफ़ॉल्ट रूप से मना किया गया है।
यह कोड-गोल्फ है , इसलिए सबसे छोटा वैध उत्तर - बाइट्स में मापा जाता है - जीतता है।
परीक्षण के मामलों
I II III P => I' II' III'
5 7 0 3 => 2 10 0
2 10 0 6 => 0 8 4
0 8 4 7 => 0 1 11
0 1 11 -4 => 4 1 7
4 1 7 0 => 4 1 7
4 1 7 1 => 3 2 7
3 2 7 -7 => 10 2 0
10 2 0 12 => 0 10 2
0 10 2 12 => 0 0 12