Submission #797882

#TimeUsernameProblemLanguageResultExecution timeMemory
797882boyliguanhan비스킷 담기 (IOI20_biscuits)C++17
12 / 100
2 ms340 KiB
#include "biscuits.h"
#include<algorithm>
long long count_tastiness(long long x, std::vector<long long> a){
	long long ans = 1, l = 0, sum = 1;
    while(a.size()!=130)
        a.push_back(0);
    for(int i = 0; i < 129; i++) {
        long long new_v=a[i]%2;
        if(!new_v&&a[i])
            new_v+=2;
        a[i+1]+=(a[i]-new_v)/2;
        a[i]=new_v;
    }
    for(int i = 0; i < 60; i++) {
        long long new_v=a[i]%2;
        if(!new_v&&a[i])
            new_v+=2;
        a[i+1]+=(a[i]-new_v)/2;
        a[i]=new_v;
    }
    for(int i = 0; i < 130; i++) {
        if(!a[i]) {
            ans *= sum;
            l = 0;
            sum = 1;
        } else {
            if(!l)
                l = i+1;
            sum+=a[i]<<(i-l+1);
        }
    }
    return ans;
}

#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...