Submission #1177936

#TimeUsernameProblemLanguageResultExecution timeMemory
1177936AldkPacking Biscuits (IOI20_biscuits)C++20
100 / 100
19 ms912 KiB
#include "biscuits.h" #include<bits/stdc++.h> #define pb push_back #define F first #define S second #define str string #define ll long long #define ull unsigned ll #define ld long double #define pll pair<ll,ll> #define plll pair<ll,pll> #define pllll pair<pll,pll> #define pii pair<int,int> #define vl vector<ll> #define vll vector<pll> #define vlll vector<plll> #define vllll vector<p4> #define vi vector<int> #define vii vector<pii> #define sz(x) (ll)(x).size() #define fr front() #define tp top() #define all(x) (x).begin(), (x).end() #define rall(x) (x).rbegin(), (x).rend() #define ins insert #define m_p make_pair #pragma GCC target( "sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") #pragma GCC optimize("Ofast,unroll-loops,fast-math,O3") using namespace std; const ld pi=acos(-1.0); const ll e5=1e5, e6=1e6, e9=1e9; const ll inf=1e18; const ll mod=998244353; const ll MOD=106710087877475399; const ll N=1e6+10; const ll M=200+10; const ld eps=1e-9; mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); ll bpm(ll x,ll y,ll m){if(y==0)return 1%m;ll p=bpm(x,y/2,m); if(y%2==0)return p*p%m;else return p*p%m*x%m;} ll bp(ll x,ll y){if(y==0)return 1;ll p=bp(x,y/2); if(y%2==0)return p*p;else return p*p*x;} ll k,dp[M]; ll f(ll l,ll r,ll x){ return (r-l)/x+1; } long long count_tastiness(long long x, std::vector<long long> a){ k=sz(a); for(ll i=0;i<60;i++) a.pb(0); dp[0]=1; for(ll i=1;i<=k+60;i++){ dp[i]=dp[i-1]; ll l=x,r=x; for(ll j=i-1;j>=0;j--){ if(a[j]>=r){ dp[i]+=dp[j]*((r-l)/x+1); break;} r-=a[j]; if(a[j]>=l) dp[i]+=dp[j]*((a[j]-l)/x+1), l=(l-a[j]%x+x-1)%x+1; else l-=a[j]; l=min(l,inf), r=min(r,inf); l=l*2, r=r*2+x; } } return dp[k+60]; }
#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...