Pagini recente » Statistici Vlad Vergelea Stefan (Vladpilotul1234) | Cod sursa (job #2721549) | Cod sursa (job #2201649) | Cod sursa (job #2389487) | Cod sursa (job #2042753)
#include <fstream>
#include <algorithm>
#define DIM 2002
using namespace std;
ifstream f("psir.in");
ofstream g("psir.out");
int n;
unsigned int d[DIM][DIM], u[DIM], s, val, cnt;
pair<unsigned int, unsigned int> v[DIM];
int main(){
f>>n;
for(int i = 1; i <= n; ++ i){
f>>v[i].first;
v[i].second = i;
}
sort(v + 1, v + n + 1);
for(int i = 1; i <= n; ++ i){
if(v[i].first != v[i - 1].first)
u[v[i].second] = ++ cnt;
else
u[v[i].second] = cnt;
}
for(int i = 1; i <= n; ++ i){
for(int j = 1; j < i; ++ j){
++d[i][u[j]];
if(u[j] < u[i])
d[i][u[j]] += d[j][n] - d[j][u[i]];
if(u[j] > u[i])
d[i][u[j]] += d[j][u[i] - 1];
}
for(int j = 1; j <= n; ++ j)
d[i][j] += d[i][j - 1];
}
for(int i = 1; i <= n; ++ i)
s += d[i][n];
g<<s;
return 0;
}