# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
374831 | Jarif_Rahman | Packing Biscuits (IOI20_biscuits) | C++17 | 2 ms | 364 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "biscuits.h"
#include <bits/stdc++.h>
#define pb push_back
#define f first
#define sc second
using namespace std;
typedef long long int ll;
typedef string str;
const int kk = 200;
ll count_tastiness(ll x, vector<ll> a){
int k = a.size();
a.resize(kk, 0);
ll ans = 1, c0 = 0, c1 = 0, cur = 0;
int block = -1;
for(int i = 0; i < kk; i++){
if(a[i] == 0){
ans*=max(cur, 1LL);
cur = 0, c0 = 0, c1 = 0;
block = i;
continue;
}
if(a[i] == 1){
cur+=1;
for(int j = i-1; j > block; j--){
if(a[j] == 1){
ll s = j-block-1;
s = 1LL<<s;
cur+=s;
}
}
c1++;
continue;
}
ll s = c0+c1;
s = 1LL<<s;
cur+=s;
if(i != kk-1) a[i+1]+=a[i]/2;
a[i]%=2;
(a[i] == 0? c0: c1)++;
}
if(ans > 1) ans++;
return ans;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |