Submission #584724

#TimeUsernameProblemLanguageResultExecution timeMemory
584724sofapudenBali Sculptures (APIO15_sculpture)C++14
50 / 100
140 ms348 KiB
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int mxN = 2e3+5; ll n, a, b, v[mxN], pre[mxN]; bool g1(ll mask){ vector<int> dp(n+1, mxN); dp[0] = 0; for(int i = 1; i <= n; ++i){ for(int j = 0; j < i; ++j){ if((mask|(pre[i]-pre[j])) == mask)dp[i] = min(dp[i],dp[j]+1); } } return dp[n] <= b; } bool g2(ll mask){ } int main(){ cin >> n >> a >> b; pre[0] = 0; for(int i = 1; i <= n; ++i)cin >> v[i], pre[i] = pre[i-1] + v[i]; ll ans = (1ll<<50)-1; for(int i = 49; ~i; --i){ if(a == 1 && g1(ans^(1ll<<i)))ans^=(1ll<<i); if(a > 1 && g2(ans^(1ll<<i)))ans^=(1ll<<i); } cout << ans << '\n'; }

Compilation message (stderr)

sculpture.cpp: In function 'bool g2(ll)':
sculpture.cpp:24:1: warning: no return statement in function returning non-void [-Wreturn-type]
   24 | }
      | ^
#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...