एल्गोरिथ्म्स और डेटा स्ट्रक्चर्स

Maximum falling path sum (अधिकतम गिरते हुए पथ का योग)

आपके पास ऊँचाई h और चौड़ाई w वाला एक ग्रिड दिया गया है। इस ग्रिड में आपको ऊपर से नीचे की ओर बढ़ते हुए मिलने वाले पथों में से उस पथ का अधिकतम योग निकालना है, जिसमें प्रत्येक कदम पर आप नीचे की ओर मौजूद तीन आस-पास की कोशिकाओं में से किसी एक में जा सकते हैं। अर्थात्, यदि आप (r, c) स्थिति पर हैं, तो अगला कदम (r + 1, c - 1), (r + 1, c), या (r + 1, c + 1) पर होगा। इसे हम “falling sum” इसलिए कहते हैं, क्योंकि आप ग्रिड के शीर्ष से लेकर सबसे निचले छोर तक “गिरते हुए” आगे बढ़ते हैं। आपका कार्य इस पथ का अधिकतम योग ढूँढ़ना है।
o
↙️
⬇️
↘️

इनपुट

इनपुट की पहली पंक्ति में दो पूर्णांक h और w होते हैं (1 ≤ h, w ≤ 100)।
इसके बाद आने वाली h पंक्तियों में w संख्याएँ (-100 ≤ ≤ 100) दी जाती हैं, जो ग्रिड की पंक्ति r और स्तंभ c पर स्थित मान को दर्शाती हैं।

आउटपुट

कार्यक्रम को उन सभी संभावित “falling paths” में से प्राप्त होने वाले अधिकतम योग को मुद्रित करना चाहिए।

उदाहरण

इनपुट
आउटपुट
3 3 2 1 3 6 5 4 7 8 9
17
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue