Pagini recente »
Atașamentele paginii Clasament 2020-12-29-clasa-6-concurs-04
|
Cod sursă (job #439667)
|
laborator11f
|
Tema 2 Cerc V-VI
|
Cod sursă (job #672434)
Cod sursă (job
#672434)
#include <bits/stdc++.h>
#define debug(x) cerr << #x << " " << x << "\n"
#define debugs(x) cerr << #x << " " << x << " "
#pragma GCC optimize("Ofast,unroll-loops")
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 if(c >= (p - t - i) * m)
{
break;
}
else
minerale+=m*scv;
}
return sfarsit;
}
int main()
{
in>>c>>t>>m>>x;
long long last = x/m;
long long r = 0, pas=1<<22;
while(pas)
{
if(r + pas <= last && produse(r+pas) < x)
r+=pas;
else
{
last = min(last, r+pas);
}
pas/=2;
}
r++;
out<<r;
}