Cod sursa(job #2111452)

Utilizator VladG26Ene Vlad-Mihai VladG26 Data 22 ianuarie 2018 09:26:45
Problema P-sir Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <cstdio>
using namespace std;
int n,v[2005],dp[2005][2005];
int f(int c,int p)
{
    int rasp=0;
    for(int i=1;i<c;i++)
    {
        if((v[p]-v[i])*(v[p]-v[c])<0)
            rasp+=dp[i][c];
    }
    return rasp;
}
int main()
{
    freopen("psir.in","r",stdin);
    freopen("psir.out","w",stdout);
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&v[i]);
    }
    for(int i=1;i<n;i++)
        for(int j=i+1;j<=n;j++)
            {
                dp[i][j]=1;
                dp[i][j]+=f(i,j);
            }
    int rasp=0;
    for(int i=1;i<n;i++)
        {
            for(int j=i+1;j<=n;j++)
            {
                rasp+=dp[i][j];
                //cout<<dp[i][j]<<" ";
            }
            //cout<<endl;
        }
    printf("%d",rasp);
    return 0;
}