Submission #405840

#TimeUsernameProblemLanguageResultExecution timeMemory
405840A_DBali Sculptures (APIO15_sculpture)C++14
46 / 100
1087 ms111828 KiB
#include<bits/stdc++.h>
#define int long long
#define pb push_back
#define F first
#define S second
using namespace std;
const int N=1e3+100;
set<int> st[N][N];
int a[N];
main()
{
    int n,A,B;
    cin>>n>>A>>B;
    for(int i=1;i<=n;i++){
        scanf("%lld",&a[i]);
    }
    int pre=0;
    for(int i=1;i<=n;i++){
        pre+=a[i];
        st[i][1].insert(pre);
    }
    for(int i=1;i<=n;i++){
        for(int j=2;j<=n;j++){
            int v=a[i];
            for(int k=i-1;k>=1;k--){
                for(auto x:st[k][j-1]){
                    if(i==3&&j==2){
//                        cout<<x<<" "<<v<<endl;
                    }
                    st[i][j].insert(x|v);
                }
                v+=a[k];
            }
        }
    }
    int ans=1e18;
    for(int i=A;i<=B;i++){
        for(auto x:st[n][i])ans=min(ans,x);
    }
    cout<<ans<<endl;
    /*
    cout<<"\n\n";
        for(int j=1;j<=n;j++){
    for(int i=1;i<=n;i++){
            for(auto x:st[i][j])cout<<x<<" ";
            cout<<endl;
        }
        cout<<endl;
    }
    */
}
/*
6 1 3
8 1 2 1 5 4

4 1 4
2 3 1 4
*/

Compilation message (stderr)

sculpture.cpp:10:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   10 | main()
      | ^~~~
sculpture.cpp: In function 'int main()':
sculpture.cpp:15:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |         scanf("%lld",&a[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...