记录编号 121428 评测结果 AAAAAAATTT
题目名称 三元数对 最终得分 70
用户昵称 Gravatar752199526 是否通过 未通过
代码语言 C++ 运行时间 3.806 s
提交时间 2014-09-19 20:36:59 内存使用 0.79 MiB
显示代码纯文本
#include<iostream>
#include<fstream>
#include<iomanip>
#include<cstdio>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include<cctype>
#include<vector>
#include<queue>
#include<deque>
#include<stack>
#include<cassert>
#include<algorithm>
#include<functional>
#include<ctime>
using namespace std ;
ifstream fin("three.in") ;
ofstream fout("three.out") ;
/*O(n^3) Violence
int main()
{
	int n , ans = 0 ; fin >> n ;
	long long array[30001] ;
	for ( int i = 1 ; i <= n ; i ++) fin >> array[ i ] ;
	for ( int i = 1 ; i <= n ; i ++)
	{
		for ( int j = i+1 ; j <= n ; j ++)
		{
			for ( int h = j+1 ; h <= n ; h ++)
			{
				if( array[ i ] < array[ j ] && array[ j ] < array[ h ] ) ans ++ ;
			}
		}
	}
	fout << ans << endl ;
	return 0 ;
}
*/
/**/
long long n , ans = 0 , array[31000][2] ;
int main()
{
	
	fin >> n ; 
	memset ( array , 0 ,sizeof( array )) ;
	for ( int i = 1 ; i <= n ; i ++ ) { fin >> array[ i ][0] ; array[ i ][1] = 1 ; }	
	array[ n ][1] = array[1][1] = 0 ;
	for ( int i = n - 1 ; i > 1 ; i -- )
	{
		for ( int j = n ; j >= i + 1 ; j --)
		{
			if( array[ i ][0] < array[ j ][0] ) array[ i ][1] ++ ;
		}
		array[ i ][1] -- ;
	}
	/*
	for ( int i = 1 ; i <= n ; i ++)
		fout << array[ i ][0] << "	"  << array[ i ][1] << "	" << endl ;
	*/ 
	for ( int i = 1 ; i <= n ; i ++)
	{
		for ( int j = i + 1 ; j <= n ; j ++)
			if ( array[ i ][0] < array[ j ][0] ) ans += array[ j ][1] ;
	}
	fout << ans << endl ;
	return 0 ;
}