Submission #676175

#TimeUsernameProblemLanguageResultExecution timeMemory
676175Ahmed57Kas (COCI17_kas)C++14
100 / 100
641 ms391704 KiB
#include<bits/stdc++.h> using namespace std; int arr[500];int n; int dp[500][200001]; int solve(int i,int sum){ if(i==n){ if(sum==100000)return 0; else return -1e9; } if(dp[i][sum]!=-1)return dp[i][sum]; return dp[i][sum] = max({solve(i+1,sum),solve(i+1,sum-arr[i]),solve(i+1,sum+arr[i])+arr[i]}); } int main(){ ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); cin>>n;int sum = 0; for(int i = 0;i<n;i++){cin>>arr[i];sum+=arr[i];} memset(dp,-1,sizeof dp); cout<<solve(0,100000)+((sum-(2*solve(0,100000)))); } //
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...