Cod sursa(job #109925)

Utilizator FlorinC1996Florin C FlorinC1996 Data 25 noiembrie 2007 12:56:52
Problema Multimi2 Scor 10
Compilator cpp Status done
Runda preONI 2008, Runda 1, Clasele 5-8 Marime 0.66 kb
#include<stdio.h>
#include<values.h>
long k,n,i,j,dif,min=MAXLONG,mi,mj,s2superior,mins2sup;
long long s1,s2;
int main()
{
freopen("multimi2.in","r",stdin);
freopen("multimi2.out","w",stdout);
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
if(i&1)
s1=((i+1)>>1)*i;
else
s1=(i>>1)*(i+1);
for(j=i+1;j<=n;j++)
{
if(j&1)
s2=((j+1)>>1)*j;
else
s2=(j>>1)*(j+1);
s2-=s1;
if(s1>s2)
dif=s1-s2;
else
dif=s2-s1;
if(min>dif && j==n)
{
min=dif;
mi=i;
mj=j;
}
}
}
printf("%ld\n",min);
printf("%ld\n",mi);
for(i=1;i<=mi;i++)
printf("%ld ",i);
printf("\n");
dif=mj-mi;
printf("%ld\n",dif);
for(i=mi+1;i<=mj;i++)
printf("%ld ",i);
fcloseall();
return 0;
}