Submission #1305549

#TimeUsernameProblemLanguageResultExecution timeMemory
1305549coolboy19521Bali Sculptures (APIO15_sculpture)C++20
0 / 100
1 ms652 KiB
#include "bits/stdc++.h" #define FOR(i,a,b)for(int i=(a);i<(b);i++) #define F0R(i,a)FOR(i,0,a) #define ROF(i,a,b)for(int i=(b)-1;i>=(a);i--) #define R0F(i,a)ROF(i,0,a) #define REP(a)F0R(_,a) using namespace std; int main(){ int n,a,b;cin>>n>>a>>b; vector<long long>y(n); for(long long&i:y)cin>>i; while(y.size()>b){ n=y.size(); vector<long long>p(n+2),s(n+2); FOR(i,1,n+1)p[i]=p[i-1]|y[i-1]; ROF(i,1,n+1)s[i]=s[i+1]|y[i-1]; long long val=LLONG_MAX,at=-1; F0R(i,n-1){ long long nw=p[i]|s[i+3]|(y[i]+y[i+1]); if(nw<val)val=nw,at=i; } y[at]=y[at]+y[at+1]; y.erase(begin(y)+at+1); } long long ans=0; for(long long i:y)ans|=i; cout<<ans<<'\n'; }
#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...