Submission #1239654

#TimeUsernameProblemLanguageResultExecution timeMemory
1239654SalihSahinPacking Biscuits (IOI20_biscuits)C++17
12 / 100
1 ms328 KiB
#include "bits/stdc++.h"
#include "biscuits.h"
using namespace std;

const int K = 60;

long long count_tastiness(long long x, vector<long long> a) {
   vector<long long> arr(K);
   for(int i = 0; i < K; i++){
      if(i < a.size()) arr[i] += a[i];

      if(arr[i] > x){
         long long df = (arr[i] - x)/2;
         arr[i+1] += df;
         arr[i] -= df * 2;
      }
   }
   /*
   for(int i = 0; i < 10; i++){
      cout<<arr[i]<<" ";
   }
   cout<<endl;
   */
   if(x == 1){
      long long ans = 1, len = 1, val = 1;
      for(int i = 0; i < K; i++){
         if(val > len){
            ans *= len;
            len = 1;
            val = 1;
         }
         len += arr[i] * val;
         val *= 2;
      }
      ans *= len;
      return ans;
   }
   else{
      return 1;
   }
}
#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...