Pagini recente » Cod sursa (job #1335649) | Cod sursa (job #1027971) | Cod sursa (job #610190) | Cod sursa (job #590008) | Cod sursa (job #487340)
Cod sursa(job #487340)
#include<fstream>
using namespace std;
long long n,m,k,l,i,j,step,p[100005],rez;
int main()
{ifstream q("progresii.in");
ofstream w("progresii.out");
q>>n>>m>>k>>l;
for(i=1;i<=n;++i)
{q>>p[i];
p[i]=l-p[i];
rez=rez+p[i]/m+1;}
if(rez-k>0)
{w<<"-1\n";
return 0;}
for(i=1;i<=n;++i)
{rez-=p[i]/m+1;
for(step=(1<<30),j=0;step;step>>=1)
if(j+step<=m)
if(rez+(p[i]/(j+step)+1)>k)
j=j+step;
++j;
rez=rez+(p[i]/(j+step)+1);
w<<j<<"\n";}}