CON - Vòng tròn số
Tác giả: hieult
Ngôn ngữ: C++
#include <stdio.h>
//#include <conio.h>
main()
{
long long n,b[100001],a[100001],tong=0;
scanf("%lld",&n);
for(long long i=1;i<=n;i++)
{
scanf("%lld",&b[i]);
tong+=b[i];
}
tong=tong/3;
if(n%3==0)
{
a[1]=1;
a[2]=2;
}
else if(n%3==1)
{
long long u=tong;
long long v=tong;
for(long long i=3;i<=n;i=i+3)
u=u-b[i];
for(long long i=4;i<=n;i=i+3)
v=v-b[i];
a[1]=u;
a[2]=v;
}
else
{
long long u=tong;
long long v=tong;
for(long long i=5;i<=n;i=i+3)
u=u-b[i];
for(long long i=6;i<=n;i=i+3)
v=v-b[i];
a[1]=b[2]-u;
a[2]=b[3]-v+b[1];
}
for(long long i=3;i<=n;i++)
a[i]=b[i-1]-a[i-1]-a[i-2];
for(long long i=1;i<=n;i++)
printf("%lld ",a[i]);
//getch();
}