제출 #676864

#제출 시각아이디문제언어결과실행 시간메모리
676864ArnchBali Sculptures (APIO15_sculpture)C++17
50 / 100
96 ms460 KiB
// oooo /* har chi delet mikhad bebar ~ gitar o ba khodet nabar! ~ ;Amoo_Hasan; */ /* link: */ #include<bits/stdc++.h> //#pragma GCC optimize("O3,no-stack-protector,unroll-loops") //#pragma GCC target("avx2,fma") using namespace std; typedef long long ll; typedef long double ld; #define Sz(x) int((x).size()) #define All(x) (x).begin(), (x).end() #define wtf(x) cout<<#x <<" : " <<x <<endl #define mak make_pair //constexpr int PRI = 1000696969; constexpr ll INF = 1e18, N = 1e6 + 10, MOD = 1e9 + 7; int n, A, B; ll a[N], dp[N]; bool ok(ll x) { ll last = 0, sum = 0, cur = 0; dp[0] = 0; for(int i = 1; i <= n; i++) { dp[i] = INF; sum = 0; for(int j = i; j >= 1; j--) { sum += a[j]; if((sum & x) == sum) dp[i] = min(dp[i], dp[j - 1] + 1); } } if(dp[n] <= B) return true; return false; } int main() { ios :: sync_with_stdio(0), cin.tie(0); cout.tie(0); cin >>n >>A >>B; for(int i = 1; i <= n; i++) cin >>a[i]; ll ans = 0; for(int i = 42; i >= 0; i--) { if(ok(ans + (1ll << i) - 1)) continue; ans |= (1ll << i); } cout<<ans; return 0; }

컴파일 시 표준 에러 (stderr) 메시지

sculpture.cpp: In function 'bool ok(ll)':
sculpture.cpp:33:5: warning: unused variable 'last' [-Wunused-variable]
   33 |  ll last = 0, sum = 0, cur = 0;
      |     ^~~~
sculpture.cpp:33:24: warning: unused variable 'cur' [-Wunused-variable]
   33 |  ll last = 0, sum = 0, cur = 0;
      |                        ^~~
#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...