من رفتم سربازی اگر محتوای منو دوست داشتید و بدردتون خورد از من حمایت مالی کنید

پاسخ سوال کشمش در پارک کوئرا

پاسخ سوال کشمش در پارک کوئرا
پاسخ سوال کشمش در پارک کوئرا

پاسخ سوال کشمش در پارک کوئرا

در این نوشته تمرین “کشمش در پارک” که در وب‌سایت کوئرا موجود است را برای شما کاربران عزیز حل کرده‌ایم.

 

پاسخ سوال کشمش در پارک کوئرا

حل سوال کشمش در پارک

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n, m;
    cin >> n >> m;
    long long jad[n][m], dp[n][m];
    for(int i=0; i<n; i++)
        for(int j=0; j<m; j++)
            cin >> jad[i][j];
    
    long long maximum_of_all = 0;
    memset(dp, 0, sizeof(long long)*n*m);

    for(int i=n-1; i>=0; i-=2)
    {
        for(int j=m-1; j>=0; j--)
        {
            if(jad[i][j] == 0)
                continue;
            if(i == n-1)
                dp[i][j] = jad[i][j];
            int paiin;
            if(((n-1)/2 - i/2)% 2 == 0)
                paiin = j-1;
            else
                paiin = j+1;
            
            if(i < n-1 && paiin >= 0 && paiin <= m-1 && dp[i+2][paiin] != 0)
                dp[i][j] = max(dp[i][j], jad[i][j] + dp[i+2][paiin]);
            if(j < m-1 && dp[i][j+1] != 0)
                dp[i][j] = max(dp[i][j], jad[i][j] + dp[i][j+1]);
        }
    }
    
    for(int i=0; i<m; i++)
        maximum_of_all = max(maximum_of_all, dp[0][i]);
    cout << maximum_of_all << endl;
    return 0;
}

منبع سوال‌: وبسایت کوئرا

 

اگر روش حل بهتری برای “تمرین کشمش در پارک” دارید برای ما ارسال کنید تا با نام خودتان به اشتراک بگذاریم. اگر سوال خاصی را مدنظر دارید در بخش نظرات برای ما ارسال کنید تا حل آن سوال را در الویت محتوای سایت بگذاریم.

برای امتیاز به این نوشته کلیک کنید!
[کل: 0 میانگین: 0]