दिशा-निर्देश
एक प्रोग्राम लिखें, जिसे एक इनपुट पूर्णांक n ( n >= 0
) दिया गया है, जहां सबसे छोटा पॉजिटिव पूर्णांक m आउटपुट है :
n = a[1]^b[1] + a[2]^b[2] + a[3]^b[3] + ... + a[k]^b[k]
a
औरb
एक ही लंबाई के परिमित क्रम हैंa
से कम के सभी तत्व हैंm
b
से कम के सभी तत्व हैंm
- के सभी तत्वों को
a
कर रहे हैं अलग और पूर्णांकोंa[x] >= 0
- के सभी तत्वों को
b
कर रहे हैं अलग और पूर्णांकोंb[x] >= 0
a[x]
औरb[x]
दोनों 0 नहीं हैं (चूंकि 0 ^ 0 अनिश्चित है)
यह कोड-गोल्फ है , इसलिए सबसे कम बाइट जीतती है।
उदाहरण
In 0 -> Out 1
Possible Sum:
In 1 -> Out 2
Possible Sum: 1^0
In 2 -> Out 3
Possible Sum: 2^1
In 3 -> Out 3
Possible Sum: 2^1 + 1^0
In 6 -> Out 4
Possible Sum: 2^2 + 3^0 + 1^1
In 16 -> Out 5
Possible Sum: 2^4
In 17 -> Out 4
Possible Sum: 3^2 + 2^3
In 23 -> Out 6
Possible Sum: 5^1 + 3^0 + 2^4 + 1^3
In 24 -> Out 5
Possible Sum: 4^2 + 2^3
In 27 -> Out 4
Possible Sum: 3^3
In 330 -> Out 7
Possible Sum: 6^1 + 4^3 + 3^5 + 2^4 + 1^0
m<2
तब m<3
तब m<4
आदि जब तक मुझे एक राशि नहीं मिलती है जो बराबर होती है n
। इसके अलावा, मैंने इस बात के बारे में सोचा कि 0
कोई शर्त नहीं है, लेकिन फिर आउटपुट क्या है? म>?
n = a[1]^b[1] + a[2]^b[2] + ... + a[k]^b[k]
।
a
और b
लंबाई के परिमित अनुक्रम हैं 0
, इसलिए कोई पूर्णांक नहीं है m
जो बाधाओं को संतुष्ट नहीं करता है, और चूंकि कोई भी छोटा पूर्णांक नहीं है, इसलिए उत्तर परिभाषित नहीं है। संभावित सुधारों के लिए सबसे छोटी प्राकृतिक संख्या m
(जिस स्थिति में आपको वहां अपेक्षित उत्तर बदलना चाहिए 0
) या सबसे छोटे सकारात्मक पूर्णांक के लिए पूछना होगा m
।