पूर्णांकों के अनुक्रम को देखते हुए या 0..N
निम्नलिखित के रूप में इस क्रम को रूपांतरित करने के लिए अधिक विशिष्ट होना
- आउटपुट [x] = रिवर्स (इनपुट [इनपुट [x]])
- दोहराना
उदाहरण के लिए: [2,1,0]बन जाता है [0,1,2]और उलट हो जाता है [2,1,0]। [0,2,1]बन जाता है [0,1,2]और उलट हो जाता है [2,1,0]।
उदाहरण 1
In: 0 1 2
S#1: 2 1 0
S#2: 2 1 0
Output: 1
उदाहरण 2
In: 2 1 0
S#1: 2 1 0
Output: 0
उदाहरण 3
In: 3 0 1 2
S#1: 1 0 3 2
S#2: 3 2 1 0
S#3: 3 2 1 0
Output: 2
उदाहरण 4
In: 3 0 2 1
S#1: 0 2 3 1
S#2: 2 1 3 0
S#3: 2 0 1 3
S#4: 3 0 2 1
Output: 3
आपका कार्य एक फ़ंक्शन (या प्रोग्राम) को परिभाषित करना है जो पूर्णांक 0..Nऔर रिटर्न (या आउटपुट) के क्रमपरिवर्तन को लेता है जब तक कि एक क्रमचय उत्पन्न नहीं हुआ है तब तक चरणों की संख्या। यदि Xरूपांतरण करने के लिए Xतो उत्पादन शून्य है, होना चाहिए, तो Xकरने के लिए रूपांतरण Yऔर Yकरने के लिए X(या Y) तो उत्पादन 1 होना चाहिए।
Y -> Y: 0 steps
Y -> X -> X: 1 step
Y -> X -> Y: 1 step
A -> B -> C -> D -> C: 3 steps
A -> B -> C -> D -> A: 3 steps
A -> B -> C -> A: 2 steps
A -> B -> C -> C: 2 steps
A -> B -> C -> B: also 2 steps
परीक्षण के मामलों:
4 3 0 1 2 -> 0 3 4 1 2 -> 4 3 2 1 0 -> 4 3 2 1 0: 2 steps
4 3 2 1 0 -> 4 3 2 1 0: 0 steps
4 3 1 2 0 -> 4 1 3 2 0 -> 4 3 2 1 0 -> 4 3 2 1 0: 2 steps
1 2 3 0 4 -> 4 1 0 3 2 -> 0 3 4 1 2 -> 4 3 2 1 0 -> 4 3 2 1 0: 3 steps
5 1 2 3 0 4 -> 0 5 3 2 1 4 -> 1 5 3 2 4 0 -> 1 4 3 2 0 5 ->
5 1 3 2 0 4 -> 0 5 3 2 1 4: 4 steps
यदि आपकी भाषा "फ़ंक्शंस" का समर्थन नहीं करती है, तो आप मान सकते हैं कि अनुक्रम पूर्णांक की पूर्ण सूची के रूप में दिया गया है जैसे कि एकल लाइन पर 0 1 2या 3 1 0 2।
मजेदार तथ्य:
- अनुक्रम 0,1,2,3, .., एन हमेशा एन, ..., 3,2,1,0 में बदल जाएगा
- अनुक्रम एन, .., 3,2,1,0 हमेशा एन, .., 3,2,1,0 में बदल जाएगा
- अनुक्रम 0,1,3,2, ..., एन + 1, एन हमेशा एन, ..., 3,2,1,0 में बदल जाएगा
बोनस कार्य : एक गणितीय सूत्र का चित्र।
वैकल्पिक नियम :
- यदि आपकी भाषा का पहला सूचकांक 0 के बजाय 1 है, तो आप क्रमपरिवर्तन का उपयोग कर सकते हैं
1..N(आप उदाहरण और टेस्टकेस में प्रत्येक पूर्णांक में एक जोड़ सकते हैं)।
3,0,1,2चाहिए2,3,0,1