Pagini recente »
Rating leonard neacsa (Neacsa_Leonard)
|
Istoria paginii utilizator/gheorghita
|
Cod sursă (job #521789)
|
Borderou de evaluare (job #486502)
|
Cod sursă (job #672420)
Cod sursă (job
#672420)
#include <bits/stdc++.h>
#define debug(x) cerr << #x << " " << x << "\n"
#define debugs(x) cerr << #x << " " << x << " "
#pragma GCC optimize("Ofast,unroll-loops")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
using namespace std;
ifstream in("scv.in");
ofstream out("scv.out");
int m, c, t, x;// x total, t timp de constructie
// m minerale pe zi, c cost SCV
long long produse(long long p)
{
int scv = 1;
long long sfarsit = m*p;
long long minerale=0;
for(int i=0; i<p; i++)
{
if(minerale >= c && c < (p - t - i) * m)
{
minerale-=c;
sfarsit -= c;
sfarsit += (p - t - i) * m;
i+=t-1;
minerale += t*m*scv;
scv++;
}
else
minerale+=m*scv;
}
return sfarsit;
}
int main()
{
in>>c>>t>>m>>x;
long long r = 0, pas=1<<22;
while(pas)
{
if(produse(r+pas) < x)
r+=pas;
pas/=2;
}
r++;
out<<r;
}