Pagini recente » Cod sursa (job #3145757) | Cod sursa (job #2272380) | Cod sursa (job #2694445) | Cod sursa (job #2190649) | Cod sursa (job #533326)
Cod sursa(job #533326)
#include <stdio.h>
int a[501],b[501],c[250001],v[10],t,i,j,s;
int main()
{
freopen("prod.in","r",stdin);
freopen("prod.out","w",stdout);
for (i=1;i<=9;++i)
{
scanf("%d",&v[i]);
s+=v[i];
}
if (s%2)
{
i=s;
while (i>s/2+1)
{
j=9;
while (!v[j]) --j;
a[i-s/2-1]=j;--v[j];--i;
}
a[0]=s/2;
b[0]=s/2+1;i=s/2+1;
while (i>0)
{
j=9;
while (!v[j]) --j;
b[i]=j;--v[j];--i;
}
}
else
{
for (i=s;i>0;i-=2)
{
j=9;
while (!v[j]) --j;
a[i]=j;--v[j];
j=9;
while (!v[j]) --j;
b[i]=j;--v[j];
}
}
for (i=1;i<=a[0];i++)
{
for (t=0,j=1;j<=b[0]||t;j++,t/=10)
c[i+j-1]=(t+=c[i+j-1]+a[i]*b[j])%10;
if (i+j-2>c[0]) c[0]=i+j-2;
}
for (i=c[0];i>0;--i) printf("%d",c[i]);
return 0;
}