हास्केल में यह साफ-सुथरा (क्लोकिंग) सुविधा है जहां आप इसे तीन नंबर दे सकते हैं और यह उनमें से एक अंकगणितीय अनुक्रम का अनुमान लगा सकता है। उदाहरण के लिए, [1, 3..27]
के बराबर है [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27]
।
यह अच्छा है और सभी लेकिन अंकगणितीय क्रम काफी सीमित हैं। जोड़, कश । गुणा कहां पर है। यह कूलर नहीं होगा अगर ऐसा ज्यामितीय दृश्यों किया [1, 3..27]
लौटने [1, 3, 9, 27]
?
चुनौती
एक प्रोग्राम / फ़ंक्शन लिखें जो तीन सकारात्मक पूर्णांकों को लेता है a , b , और c और आउटपुट जहां x सबसे बड़ा पूर्णांक है c जिसे एक पूर्णांक के रूप में n के रूप में दर्शाया जा सकता है।[a, b, b × (b ÷ a), b × (b ÷ a)2, ..., x]
b × (b ÷ a)n
अर्थात्, आउटपुट r होना चाहिए , जैसे:
r0 = a
r1 = b
rn = b × (b ÷ a)n-1
rlast = greatest integer ≤ c that can be represented as b × (b ÷ a)n
where n is a positive integer
विशेष विवरण
- मानक I / O नियम लागू होते हैं ।
- मानक खामियों को मना किया जाता है ।
- ख हमेशा से विभाज्य हो जाएगा एक ।
- एक < b ≤ ग
- यह चुनौती सभी भाषाओं में सबसे छोटा दृष्टिकोण खोजने के बारे में नहीं है, बल्कि, यह प्रत्येक भाषा में सबसे छोटा दृष्टिकोण खोजने के बारे में है ।
- आपका कोड बाइट्स में स्कोर किया जाएगा , आमतौर पर एन्कोडिंग UTF-8 में, जब तक कि अन्यथा निर्दिष्ट न हो।
- अंतर्निहित कार्य (गणितज्ञ में एक: P) हो सकता है जो इस अनुक्रम की गणना की अनुमति देता है, लेकिन एक समाधान सहित जो एक अंतर्निहित पर भरोसा नहीं करता है, को प्रोत्साहित किया जाता है।
- स्पष्टीकरण, यहां तक कि "व्यावहारिक" भाषाओं के लिए भी प्रोत्साहित किया जाता है ।
परीक्षण के मामलों
a b c r
1 2 11 [1, 2, 4, 8]
2 6 100 [2, 6, 18, 54]
3 12 57 [3, 12, 48]
4 20 253 [4, 20, 100]
5 25 625 [5, 25, 125, 625]
6 42 42 [6, 42]
कुछ बेहतर प्रारूपों में:
1 2 11
2 6 100
3 12 57
4 20 253
5 25 625
6 42 42
1, 2, 11
2, 6, 100
3, 12, 57
4, 20, 253
5, 25, 625
6, 42, 42