제출 #1042650

#제출 시각아이디문제언어결과실행 시간메모리
1042650AmirAli_H1비스킷 담기 (IOI20_biscuits)C++17
9 / 100
16 ms1748 KiB
// In the name of Allah #include <bits/stdc++.h> #include "biscuits.h" using namespace std; typedef long long int ll; typedef long double ld; typedef pair<int, int> pii; typedef pair<ll, ll> pll; typedef complex<ld> cld; #define all(x) (x).begin(),(x).end() #define len(x) ((ll) (x).size()) #define F first #define S second #define pb push_back #define sep ' ' #define endl '\n' #define Mp make_pair #define kill(x) cout << x << '\n', exit(0) #define set_dec(x) cout << fixed << setprecision(x); #define file_io(x,y) freopen(x, "r", stdin); freopen(y, "w", stdout); mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); const int maxn = 60; int n; ll R; ll A[maxn]; vector<ll> ls; vector<ll> res, resx; ll count_tastiness(ll x, vector<ll> Ax) { Ax.resize(maxn); n = len(Ax); R = x; for (int i = 0; i < n; i++) A[i] = Ax[i]; ll sm = 0; ls.clear(); for (int i = 0; i < n; i++) { sm += (A[i] << i); ll valx = (sm / R); ls.pb(max(0ll, valx - (1ll << i) + 1)); } if (sm > 2e5) exit(23); res.clear(); res.pb(0); for (int i = 0; i < n; i++) { resx.clear(); for (ll x : res) { if (x < ls[i]) resx.pb(x + (1ll << i)); } for (ll x : resx) res.pb(x); } return len(res); }
#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...