मान लीजिए हम नीचे दिए गए अनुसार एक संख्या त्रिकोण उत्पन्न कर रहे हैं:
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1
जहां प्रत्येक पंक्ति में एलिमेंट्स इसके ऊपर तीन संख्याओं को जोड़कर उत्पन्न होते हैं। अब यदि हमारे पास एक लाइन नंबर l है। हमें उस लाइन की पहली सम संख्या की स्थिति ढूंढनी है। स्थिति मान 1 से शुरू होते हैं।
तो, यदि इनपुट l = 5 है, तो आउटपुट 2 होगा
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 1 4 10 16 19 16 10 4 1
इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे:
- यदि l, 1 के समान है या l, 2 के समान है, तो
- -1 वापस करें
- अन्यथा जब l mod 2, 0 के समान है, तो
- यदि l mod 4, 0 के समान है, तो
- 3 वापस करें
- अन्यथा,
- 4 वापस करें
- यदि l mod 4, 0 के समान है, तो
- अन्यथा,
- 2 वापस करें
उदाहरण
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:
def solve(l): if l == 1 or l == 2 : return -1 elif l % 2 == 0: if l % 4 == 0: return 3 else: return 4 else: return 2 l = 5 print(solve(l))
इनपुट
5
आउटपुट
2