제출 #850153

#제출 시각아이디문제언어결과실행 시간메모리
850153angelsFunctionCup Museum (FXCUP4_museum)C++17
0 / 100
3 ms4440 KiB
#include "museum.h"
#include <bits/stdc++.h>
using namespace std;
long long CountSimilarPairs(std::vector<int> B, std::vector<int> T, std::vector<int> G) 
{
	int N = B.size();
	int b[101], t[101], g[101], bt[101][101], bg[101][101], tg[101][101], btg[101][101][101];
	long long result=0;
	for(int i=0; i<N; i++)
    {
        b[B[i]]++;
        t[T[i]]++;
        g[G[i]]++;
        bg[B[i]][G[i]]++;
        bt[B[i]][T[i]]++;
        tg[T[i]][G[i]]++;
        btg[B[i]][T[i]][G[i]]++;
    }
    for(int i=1; i<=100; i++)
    {
        result+=((b[i])*(b[i]-1))/2;
        result+=((t[i])*(t[i]-1))/2;
        result+=((g[i])*(g[i]-1))/2;
    }
    for(int i=1; i<=100; i++)
    {
        for(int j=1; j<=100; j++)
        {
            result-=((bt[i][j])*(bt[i][j]-1))/2;
            result-=((tg[i][j])*(tg[i][j]-1))/2;
            result-=((bg[i][j])*(bg[i][j]-1))/2;
        }
    }
	for(int i=1; i<=100; i++)
    {
        for(int j=1; j<=100; j++)
        {
            for(int k=1; k<=100; k++)
                result+=((btg[i][j][k])*(btg[i][j][k]-1))/2;
        }
    }
	return result;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...