This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <stdio.h>
#include "museum.h"
typedef long long lli;
lli a[101], b[101], c[101];
lli ab[101][101], ac[101][101], bc[101][101];
lli abc[101][101][101];
lli c2(lli x) {
return x*(x-1)/2;
}
int n, x[200000], y[200000], z[200000];
long long CountSimilarPairs(std::vector<int> B, std::vector<int> T, std::vector<int> G) {
n=B.size();
for(int i=0;i<n;i++) {
x[i]=B[i]; y[i]=T[i]; z[i]=G[i];
a[x[i]]++; b[y[i]]++; c[z[i]]++;
ab[x[i]][y[i]]++; ac[x[i]][z[i]]++; bc[y[i]][z[i]]++;
abc[x[i]][y[i]][z[i]]++;
}
lli res=0;
for(int i=1;i<=100;i++) {
res+=c2(a[i]);
res+=c2(b[i]);
res+=c2(c[i]);
}
for(int i=1;i<=100;i++) {
for(int j=1;j<=100;j++) {
res-=c2(ab[i][j]);
res-=c2(ac[i][j]);
res-=c2(bc[i][j]);
}
}
for(int i=1;i<=100;i++) {
for(int j=1;j<=100;j++) {
for(int k=1;k<=100;k++)
res+=c2(abc[i][j][k]);
}
}
return res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |