आपका कार्य इनपुट का विश्लेषण करना है और अगर यह एक अंकगणितीय अनुक्रम है, तो n-th शब्द के लिए सूत्र का उत्पादन करना चाहिए, अन्यथा इसे "NAAP" प्रिंट करना चाहिए।
इनपुट
इनपुट (एसटीडीआईएन से) 4 से 10 की संख्या के बीच कुछ संख्याओं से मिलकर बनेगा, जहां प्रत्येक संख्या -1000 और 1000 के बीच की सीमा में होगी, एक सीमांकक (एक अंतरिक्ष या अल्पविराम या एक अर्ध-बृहदान्त्र) द्वारा अलग है [जो भी हो आपकी प्राथमिकता])। यहाँ कुछ उदाहरण इनपुट हैं।
12,14,16,18 //valid
-3 4 5 1 -2 -4 //valid
45;35;-35 //invalid (only three numbers are present instead of the minimum of 4 numbers)
2,32;21,321 //invalid (it uses two different delimiters: `,` and `;`)
उत्पादन
कार्यक्रम को पहले जांचना चाहिए कि इनपुट एक अंकगणितीय प्रगति है या नहीं।
अंकगणित प्रगति (एपी) संक्षेप में: हर एपी में एक सामान्य अंतर होगा। यह $ n $ और $ {n-1} $ th शब्द (मूल रूप से $ n (n + 1) - a (n) $ जहां a
sequnce के लिए कार्य है ) के बीच अंतर है । यह अंतर AP में $ n $ के किसी भी मूल्य के लिए समान रहता है। अगर कोई आम अंतर नहीं है, तो यह है नहीं अंकगणितीय अनुक्रम। N-th शब्द के मूल्य की गणना करने के लिए, इस सूत्र का उपयोग $ a (n) = a (1) + (n-1) d $ जहाँ $ a (1) $ पहला शब्द है और $ d $ आम है अंतर।
यदि यह नहीं है एक अंकगणितीय प्रगति है, तो प्रोग्राम त्रुटि संदेश "NAAP" ( "नहीं एक अंकगणितीय प्रगति" का संक्षिप्त रूप) प्रिंट चाहिए।
यदि यह है एक अंकगणितीय प्रगति है, तो कार्यक्रम STDOUT के अनुक्रम का सरलीकृत एन-वें अवधि प्रिंट चाहिए।
उदाहरण:
> 1,3,5,7,9
2n-1
स्पष्टीकरण: यह एक एपी है क्योंकि एक सामान्य अंतर है ($ 3 - 1 = 2 $)। तब आप सूत्र $ a (n) = (1) + (n-1) d $ का उपयोग करते हैं
इसलिए आउटपुट है 2n-1
(रिक्त स्थान की अनुपस्थिति पर ध्यान दें)
मानक कमियां डिफ़ॉल्ट रूप से अस्वीकृत हो जाती हैं।
आपको एक फ़ंक्शन बनाने की अनुमति है यदि आप चाहते हैं (आपके पैरामीटर के रूप में संख्याओं की सरणी के साथ)। यदि नहीं, तो आपको एक पूर्ण प्रोग्राम बनाना होगा जो इनपुट को एक स्ट्रिंग या एक सरणी के रूप में लेता है और तदनुसार आउटपुट करता है।
परीक्षण के मामलों:
1।
1,3,5,7,9
2n-1
2।
1 3 12312 7 9
NAAP
3।
-6;8;22;36;50
14n-20
4।
5,1,-3,-7,-11,-15
-4n+9
5।
-5,-7,-9,-11,-13,-15
-2n-3
6।
3,3,3,3,3,3,3,3,3
0n+3
7।
-4,-5,-6,-7
-1n-3
यह कोड-गोल्फ है इसलिए बाइट्स जीत में सबसे छोटा कोड है! (बुरा गणित- jax के लिए खेद है)
किसी भी सुझाव का स्वागत है!
0,0,0,0
और 3,1,-1,-3,-5
अंकगणितीय प्रगति? यदि ऐसा है, तो मुझे लगता है कि वे अच्छे परीक्षण के मामले होंगे, क्योंकि उन्होंने एक विधि को तोड़ दिया था जिसे मैं कोशिश कर रहा था।