제출 #1144188

#제출 시각아이디문제언어결과실행 시간메모리
1144188aguss휴가 (IOI14_holiday)C++20
0 / 100
5094 ms9280 KiB
#include"holiday.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

int n;
vector<ll> arr;
ll ans = 0;

void backtrackingoesoquedicelachavizadehoyendiayaestoyviejolptm(int curr, int d, ll sum, vector<bool>& vis){
    if(d == 0){
        ans = max(ans, sum);
        return;
    }
    if(!vis[curr]){
        vis[curr] = 1;
        backtrackingoesoquedicelachavizadehoyendiayaestoyviejolptm(curr, d - 1, sum + arr[curr], vis);
        vis[curr] = 0;
    }

    if(curr > 0){
        backtrackingoesoquedicelachavizadehoyendiayaestoyviejolptm(curr - 1, d - 1, sum, vis);
    }

    if(curr < n - 1){
        backtrackingoesoquedicelachavizadehoyendiayaestoyviejolptm(curr + 1, d - 1, sum, vis);
    }
}
long long int findMaxAttraction(int N, int start, int d, int attraction[]) {
    n = N;
    arr.assign(n, 0);
    copy(attraction, attraction + n, arr.begin());
    vector<bool> vis(n, 0);
    backtrackingoesoquedicelachavizadehoyendiayaestoyviejolptm(start, d, 0, vis);
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...