Pagini recente » Cod sursa (job #2820344) | Cod sursa (job #172418) | Cod sursa (job #417439) | Cod sursa (job #282309) | Cod sursa (job #965664)
Cod sursa(job #965664)
#include <iostream>
#include <fstream>
using namespace std;
long long result;
long long sum, a[4];
int main()
{
ifstream f ("plus.in");
f>>sum;
long long i, x, y;
for (i=1; i<=3; i++)
{
f>>x>>y;
if (y == -1)
{
if (a[1] == 0)
a[1] += x;
else
a[1] *= x;
}
else
if (y == 0)
{
if (a[2] == 0)
a[2] += x+1;
else
a[2] *= x+1;
}
else
if (a[3] == 0)
a[3] += x;
else
a[3] *= x;
}
f.close();
if (a[3] >= sum)
{
result += a[2]; /// adaug doar de 1 ca sa fac sum si apoi adaug 0 in toate modurile posibile adica a[2] + 1
/// pentru diferenta de la sum la a[3] la fiecare pas adaug i de 1 si scad i de 1
///si pentru fiecare pas pot adauga zerouri in toate modurile posibile
///(atata timp cat mai am si -1 destui)
for (i=1; i<=a[3] - sum; i++)
if (a[1] > 0)
{
a[1]--;
result += a[2];
}
else
i = a[3] - sum + 1;
}
ofstream g("plus.out");
g<<result<<"\n";
g.close();
return 0;
}