आकार n × n का द्वि-आयामी सरणी n * n संख्याओं से भरा होता है, नंबर 1 से शुरू होता है। उन संख्याओं को आरोही क्रम में प्रति पंक्ति क्रमबद्ध किया जाना है; पंक्ति की पहली संख्या पिछली पंक्ति की अंतिम संख्या से अधिक होनी चाहिए (सभी की सबसे छोटी संख्या (1) [0,0] में होगी)। यह 15 पज़ल के समान है ।
यह, उदाहरण के लिए, आकार n = 3 का एक सॉर्ट किया गया सरणी है ।
1 2 3
4 5 6
7 8 9
इनपुट
इनपुट एक तले हुए सरणी है। यह n = 10. तक किसी भी आकार का हो सकता है। n = 3 के लिए उदाहरण
4 2 3
1 8 5
7 9 6
उत्पादन
सरणी को सॉर्ट करने के लिए आवश्यक स्वैप की सूची आउटपुट करें । एक स्वैप को निम्नलिखित के रूप में परिभाषित किया गया है: दो आसन्न संख्याएं स्वैप स्थिति, या तो क्षैतिज या लंबवत; विकर्ण स्वैपिंग की अनुमति नहीं है।
ऊपर दिए गए उदाहरण के लिए उदाहरण आउटपुट:
- स्वैप 4 और 1
- स्वैप 8 और 5
- स्वैप 8 और 6
- स्वैप ९ और 8
कम स्वैप आवश्यक, बेहतर। गणना समय संभव होना चाहिए।
यहाँ n = 10 के साथ एक और उदाहरण इनपुट है:
41 88 35 34 76 44 66 36 58 28
6 71 24 89 1 49 9 14 74 2
80 31 95 62 81 63 5 40 29 39
17 86 47 59 67 18 42 61 53 100
73 30 43 12 99 51 54 68 98 85
13 46 57 96 70 20 82 97 22 8
10 69 50 65 83 32 93 45 78 92
56 16 27 55 84 15 38 19 75 72
33 11 94 48 4 79 87 90 25 37
77 26 3 52 60 64 91 21 23 7
अगर मैं गलत नहीं हूं, तो इसके लिए लगभग 1000-2000 स्वैप की आवश्यकता होगी।