Submission #1224252

#TimeUsernameProblemLanguageResultExecution timeMemory
1224252Muhammad_AneeqPeru (RMI20_peru)C++20
18 / 100
1098 ms49224 KiB
#include "peru.h" #include <iostream> using namespace std; long long const mod=1e9+7; int solve(int n, int k, int* v) { long long dp[n+10]={}; dp[0]=0; long long pw[n+10]={}; pw[0]=1; for (int i=1;i<=n;i++) { long long mx=0; dp[i]=1e18+10; for (int j=i;j>max(0,i-k);j--) { mx=max(mx,1ll*v[j-1]); dp[i]=min(dp[i],dp[j-1]+mx); } pw[i]=(pw[i-1]*23ll)%mod; } long long ans=0; for (int i=1;i<=n;i++) { dp[i]%=mod; ans=ans+(dp[i]*pw[n-i])%mod; ans%=mod; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...