मान लीजिए कि हमारे पास एक संख्या n है। हमें n x n आकार की वर्णमाला रंगोली बनानी है। n 1 और 26 के भीतर होना चाहिए और यह a से शुरू होगा और z पर समाप्त होगा जब n 26 होगा।
तो, अगर इनपुट 5 की तरह है, तो आउटपुट होगा
--------e-------- ------e-d-e------ ----e-d-c-d-e---- --e-d-c-b-c-d-e-- e-d-c-b-a-b-c-d-e --e-d-c-b-c-d-e-- ----e-d-c-d-e---- ------e-d-e------ --------e--------
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- n-1 से 0 की श्रेणी में i के लिए, 1 से घटाएं
- जे के लिए 0 से i-1 की श्रेणी में, करें
- प्रिंट "--"
- j के लिए n-1 से i+1 की श्रेणी में, 1 से घटाएं
- प्रिंट कैरेक्टर जिसका ASCII j+97 है और अंत में अतिरिक्त "-" प्रिंट करें
- जे के लिए i से n-1 की श्रेणी में, करें
- यदि j, n-1 के समान नहीं है, तो
- प्रिंट कैरेक्टर जिसका ASCII j+97 है और अंत में अतिरिक्त "-" प्रिंट करें
- अन्यथा,
- प्रिंट कैरेक्टर जिसका ASCII j+97 है
- यदि j, n-1 के समान नहीं है, तो
- जे के लिए 0 से 2*i-1 की सीमा में, करें
- अंत में "-" प्रिंट करें
- अगली पंक्ति के लिए जाएं
- जे के लिए 0 से i-1 की श्रेणी में, करें
- 1 से n-1 की श्रेणी में i के लिए, करें
- जे के लिए 0 से i की सीमा में, करें
- प्रिंट "--"
- j के लिए n-1 से i+1 की श्रेणी में, 1 से घटाएं
- प्रिंट कैरेक्टर जिसका ASCII j+97 है और अंत में अतिरिक्त "-" प्रिंट करें
- जे के लिए i से n-1 की श्रेणी में, करें
- यदि j, n-1 के समान नहीं है, तो
- प्रिंट कैरेक्टर जिसका ASCII j+97 है और अंत में अतिरिक्त "-" प्रिंट करें
- अन्यथा,
- प्रिंट कैरेक्टर जिसका ASCII j+97 है
- यदि j, n-1 के समान नहीं है, तो
- जे के लिए 0 से 2*i-1 की सीमा में, करें
- अंत में "-" प्रिंट करें
- अगली पंक्ति पर जाएं
- जे के लिए 0 से i की सीमा में, करें
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें
def solve(n): for i in range(n-1,-1,-1): for j in range(i): print(end="--") for j in range(n-1,i,-1): print(chr(j+97),end="-") for j in range(i,n): if j != n-1: print(chr(j+97),end="-") else: print(chr(j+97),end="") for j in range(2*i): print(end="-") print() for i in range(1,n): for j in range(i): print(end="--") for j in range(n-1,i,-1): print(chr(j+97),end="-") for j in range(i,n): if j != n-1: print(chr(j+97),end="-") else: print(chr(j+97),end="") for j in range(2*i): print(end="-") print() n = 8 solve(n)
इनपुट
8
आउटपुट
--------------h-------------- ------------h-g-h------------ ----------h-g-f-g-h---------- --------h-g-f-e-f-g-h-------- ------h-g-f-e-d-e-f-g-h------ ----h-g-f-e-d-c-d-e-f-g-h---- --h-g-f-e-d-c-b-c-d-e-f-g-h-- h-g-f-e-d-c-b-a-b-c-d-e-f-g-h --h-g-f-e-d-c-b-c-d-e-f-g-h-- ----h-g-f-e-d-c-d-e-f-g-h---- ------h-g-f-e-d-e-f-g-h------ --------h-g-f-e-f-g-h-------- ----------h-g-f-g-h---------- ------------h-g-h------------ --------------h--------------