Submission #806661

#TimeUsernameProblemLanguageResultExecution timeMemory
806661PixelCat비스킷 담기 (IOI20_biscuits)C++14
9 / 100
1126 ms1051004 KiB
#include "biscuits.h" #ifdef NYAOWO #include "grader.cpp" #endif #include <bits/stdc++.h> #define For(i, a, b) for(int i = a; i <= b; i++) #define Forr(i, a, b) for(int i = a; i >= b; i--) #define F first #define S second #define all(x) x.begin(), x.end() #define sz(x) ((int)x.size()) #define eb emplace_back #define int LL using namespace std; using i32 = int32_t; using LL = long long; using pii = pair<int, int>; const int MAXK = 60; int a[MAXK + 10]; int val[MAXK + 10]; long long count_tastiness(long long x, std::vector<long long> _a) { int k = sz(_a); memset(a, 0, sizeof(a)); memset(val, 0, sizeof(val)); For(i, 0, k - 1) { a[i] = _a[i]; val[i] = a[i] << i; } k = 60; For(i, 1, k) { val[i] += val[i - 1]; } int lim = val[k] / x; vector<int> v; v.eb(val[k]); For(i, 0, k - 1) { if((1ll << i) > lim) break; int n = sz(v); For(j, 0, n - 1) { int y = v[j]; if(val[k] - y + (x << i) <= val[i]) { v.eb(y - (x << i)); } else { break; } } } return sz(v); }
#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...