पृष्ठभूमि
गोल्तेस्तान के काल्पनिक देश की आधिकारिक मुद्रा फू है , और प्रचलन में केवल तीन प्रकार के सिक्के हैं: 3 फ़ॉस्स, 7 फ़ॉस्स और 8 फ़ॉस्। एक व्यक्ति यह देख सकता है कि इन सिक्कों का उपयोग करके कुछ राशि का भुगतान करना संभव नहीं है, जैसे 4 फ़ॉज़। फिर भी, सभी बड़ी पर्याप्त मात्रा का गठन किया जा सकता है। आपका काम सबसे बड़ी राशि का पता लगाना है जो सिक्कों के साथ नहीं बन सकती है (इस मामले में 5 फोक्स), जिसे सिक्का समस्या के रूप में जाना जाता है ।
इनपुट
आपका इनपुट सकारात्मक पूर्णांक की एक सूची है, जो संचलन में सिक्कों के मूल्यों का प्रतिनिधित्व करता है। इसके बारे में दो बातों की गारंटी है:L = [n1, n2, ..., nk]
- के तत्वों का GCD
L
1 है। L
1 नंबर शामिल नहीं है।
यह अनसोल्ड हो सकता है और / या डुप्लिकेट हो सकता है (विशेष संस्करण सिक्के सोचें)।
उत्पादन
चूंकि जीसीडी L
1 है, इसलिए प्रत्येक बड़े पर्याप्त पूर्णांक m
को इसके तत्वों के गैर-नकारात्मक रैखिक संयोजन के रूप में व्यक्त किया जा सकता है; दूसरे शब्दों में, हमारे पास है
m = a1*n1 + a2*n2 + ... + ak*nk
कुछ पूर्णांकों के लिए । आपका आउटपुट सबसे बड़ा पूर्णांक है जिसे इस रूप में व्यक्त नहीं किया जा सकता है। एक संकेत के रूप में, यह ज्ञात है कि आउटपुट हमेशा से कम है , यदि और ( संदर्भ ) के अधिकतम और न्यूनतम तत्व हैं ।ai ≥ 0
(n1 - 1)*(nk - 1)
n1
nk
L
नियम
आप एक पूर्ण कार्यक्रम या एक फ़ंक्शन लिख सकते हैं। सबसे कम बाइट गिनती जीतता है, और मानक खामियों को रोक दिया जाता है। यदि आपकी भाषा में इसके लिए अंतर्निहित ऑपरेशन है, तो आप इसका उपयोग नहीं कर सकते हैं। समय या स्मृति दक्षता के लिए कोई आवश्यकता नहीं है, सिवाय इसके कि आपको अपना उत्तर पोस्ट करने से पहले परीक्षण मामलों का मूल्यांकन करने में सक्षम होना चाहिए।
जब मैंने इस चुनौती को पोस्ट किया, तो उपयोगकर्ता @vihan ने बताया कि स्टैक ओवरफ्लो का एक सटीक डुप्लिकेट है । इस मेटा चर्चा के आधार पर , इस चुनौती को डुप्लिकेट के रूप में हटाया नहीं जाएगा; हालाँकि, मैं पूछता हूं कि एसओ संस्करण के आधार पर सभी उत्तरों को मूल का हवाला देना चाहिए, सामुदायिक विकी का दर्जा दिया जाना चाहिए, और यदि मूल लेखक यहां अपना उत्तर पोस्ट करना चाहते हैं, तो उन्हें हटा दिया जाना चाहिए।
परीक्षण के मामलों
[3, 7, 8] -> 5
[25, 10, 16] -> 79
[11, 12, 13, 14, 13, 14] -> 43
[101, 10] -> 899
[101, 10, 899] -> 889
[101, 10, 11] -> 89
[30, 105, 70, 42] -> 383
[2, 51, 6] -> 49
[2,3]
उचित समय में कर सकता है और कुछ नहीं। [2,5]
स्मृति में लगभग एक लाख पायथन सूची बनाएगा।
FrobeniusNumber
गणित में