MSBOP 2015 Round3 register

Ended

Participants:978

Verdict:AC | AC
Submitted:2015-05-09 15:46:17

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <cstdio>
using namespace std;
int N,K,T;
int a[100003];
long long f(int x, int y){
    int yn=0;
    long long res=0;
    for(int i=0;i<N;++i){
        if(a[i]==y)
            ++yn;
        if(a[i]==x)
            res+=yn;
    }
    return res;
}
int main(){
    scanf("%d",&T);
    for(int cs=1; cs<=T; ++cs){
        scanf("%d%d", &N, &K);
        for(int i=0;i<N;++i){
            scanf("%d", &a[i]);
        }
        long long sum=0;
        for(int i=1; i<=K; ++i){
            for(int j=i+1;j<=K;++j){
                if(i==j)
                    continue;
                sum+=min(f(i, j), f(j, i));
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX