Pagini recente » Profil DEYDEY2 | Cod sursa (job #2793732) | Cod sursa (job #3123914) | Cod sursa (job #380898) | Cod sursa (job #67835)
Cod sursa(job #67835)
#include <cstdio>
#define fin "psir.in"
#define fout "psir.out"
#define Nmax 1001
long long ret,Mod,cnt[Nmax][Nmax];
int N,v[Nmax];
int main() {
int i,j,k;
freopen(fin,"r",stdin); freopen(fout,"w",stdout);
scanf("%d",&N);
Mod=(long long)1<<32;
// fprintf(stderr,"%lld\n",Mod);
for (i=1;i<=N;++i)
scanf("%d",&v[i]);
for (i=1;i<=N;++i)
for (j=1;j<i;++j)
cnt[i][j]=1;
for (i=1;i<=N;++i)
for (j=1;j<i;++j)
for (k=1;k<j;++k)
if ( (v[j] < v[i] && v[k] > v[i]) || (v[j] > v[i] && v[k] < v[i] ) ) {
cnt[i][j]+=cnt[j][k];
if ( cnt[i][j] >= Mod )
cnt[i][j]-=Mod;
}
for (i=1;i<=N;++i)
for (j=1;j<i;++j) {
ret+=cnt[i][j];
if (ret>=Mod)
ret-=Mod;
}
printf("%lld\n",ret);
return 0;
}