Submission #498998

#TimeUsernameProblemLanguageResultExecution timeMemory
498998amukkalirBali Sculptures (APIO15_sculpture)C++17
0 / 100
99 ms262148 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; const ll INF = INT_MAX; const int nax = 2000; int a, b, n; ll y[nax+5]; int dp[51][505][550][25]; int f(int idx, ll sum, ll val, int grup) { if(grup > 20) return INF; int &res = dp[idx][sum][val][grup]; if(~res) return res; if(idx==n) res = (a <= grup && grup <= b) ? (val | (sum + y[n])) : INF; else res = min(f(idx+1, sum+y[idx], val, grup), f(idx+1, 0, val | (sum+y[idx]), grup+1)); cerr << idx << ' ' << sum << " " << val << " " << grup << " " << res << endl; return res; } int main() { scanf("%d %d %d", &n, &a, &b); for(int i=1; i<=n; i++) { scanf("%lld", &y[i]); } memset(dp, -1, sizeof (dp)); printf("%d", f(1, 0, 0, 1)); }

Compilation message (stderr)

sculpture.cpp: In function 'int main()':
sculpture.cpp:25:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 |  scanf("%d %d %d", &n, &a, &b);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
sculpture.cpp:27:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |   scanf("%lld", &y[i]);
      |   ~~~~~^~~~~~~~~~~~~~~
#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...