제출 #1301589

#제출 시각아이디문제언어결과실행 시간메모리
1301589wojtaszekliszekRice Hub (IOI11_ricehub)C++20
100 / 100
9 ms1408 KiB
#include "ricehub.h" #include <bits/stdc++.h> using namespace std; #define ll long long vector<ll>cord(100005); ll suma(int mid){ ll mini=LLONG_MAX,sum=0; int med=(mid-1)/2,med2=(mid-1)/2; if(mid%2==1){ med2--; } for(int i=0;i<mid;i++){ ll comp=abs(cord[i]-cord[med]); sum+=comp; } int p=mid-1; while(cord[p]>0){ mini=min(mini,sum); sum+=-cord[med+1]-cord[med2+1]+cord[p-mid+1]+cord[p+1]; med++; med2++; p++; } return mini; } int besthub(int n, int l, int x[], long long b) { for(int i=0;i<n;i++){ cord[i]=x[i]; } int p=1,k=n,mid=(n+1)/2; while(k>=p){ if(suma(mid)>b){ k=mid-1; } else{ p=mid+1; } mid=(k+p)/2; } return p-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...