Pagini recente » Cod sursa (job #2466271) | Cod sursa (job #1314935) | Cod sursa (job #226734) | Cod sursa (job #742536) | Cod sursa (job #571756)
Cod sursa(job #571756)
#include <iostream>
#include <fstream>
#include <algorithm>
#define DN 2005
#define ui unsigned int
using namespace std;
ui dp[DN][DN],v[DN],ind[DN],sf[DN],n;
bool cmp(const int &a, const int &b) {
return v[a]<v[b];
}
int main()
{
ifstream f("psir.in");
ofstream g("psir.out");
f>>n;
for(int i=1; i<=n; ++i) {
f>>v[i];
ind[i]=i;
}
sort(ind+1,ind+n+1,cmp);
for(int i=1; i<=n; ++i) {
for(int j=1; j<i; ++j) {
++dp[i][ind[j]];
if(ind[i]>ind[j]) dp[i][ind[j]]+=dp[j][n]-dp[j][ind[i]];
else dp[i][ind[j]]+=dp[j][ind[i]-1];
}
for(int j=2; j<=n; ++j) dp[i][j]+=dp[i][j-1];
}
ui rez=0;
for(int i=1; i<=n; ++i) rez+=dp[i][n];
//cout<<rez;
g<<rez;
return 0;
}