Cod sursa(job #465482)

Utilizator zloteanu.adrianzloteanu adrian nichita zloteanu.adrian Data 24 iunie 2010 13:48:45
Problema Plus Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<fstream.h>
ifstream q("plus.in");
ofstream w("plus.out");
long long a,b,c,na,nb,nc,i,nr,s,number,lc,lb,rc,rb;
long long m(long long a,long long b)
{if(a<b)
 return a;
return b;}
long long M(long long a,long long b)
{if(a>b)
 return a;
return b;}
int main()
{q>>s>>na>>a>>nb>>b>>nc>>c;
s=s+a;
rb=M(0,b*nb);
rc=M(0,c*nc);
lb=m(0,b*nb);
lc=m(0,c*nc);
for(i=0;i<=na;i++)
  {s-=a;
  if(b==0)
   if(c==0)
    number+=(s==0)*(nb+1)*(nc+1);
   else
    {nr=s/c;
	number+=(nr<=nc && nr>=0)*(nb+1);}
  else
   if(c==0)
    {nr=s/b;
	number=number+(nr>=0&&nr<=nb)*(nc+1);}
   else
	number=number+M(0,m(s-lb,rc)-M(s-rb,lc)+1);}
w<<number<<"\n";
return 0;}