This one is a shitty problem.
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
bool arr[20000+5];
int main()
{
int n,a,kase=1;
int prev=-1;
int val[105];
bool Bseq;
while(scanf ("%d", &n) != EOF)
{
Bseq=1;
for(int i=0;i<n;i++)
{
cin>>val[i];
}
for(int i=0;i<n-1;i++)
{
if(val[i]<1 || val[i]>=val[i+1])
{
Bseq=0;
break;
}
}
if(Bseq)
{
memset(arr,0,sizeof(arr));
for(int i=0;i<n;i++)
{
for(int j=i;j<n;j++)
{
a=val[i]+val[j];
if(arr[a])
{
Bseq=0;
i=j=n;
}
else
arr[a]=1;
}
}
if(Bseq)
cout<<"Case #"<<kase++<<": It is a B2-Sequence.\n\n";
else
cout<<"Case #"<<kase++<<": It is not a B2-Sequence.\n\n";
}
else
cout<<"Case #"<<kase++<<": It is not a B2-Sequence.\n\n";
}
}