Pagini recente » Cod sursa (job #1609012) | Cod sursa (job #1824924) | Cod sursa (job #356563) | Cod sursa (job #1870710) | Cod sursa (job #67833)
Cod sursa(job #67833)
#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("%d\n",ret);
return 0;
}