#include using namespace std; typedef long long ll; typedef pair p_ll; template void debug(T itr1, T itr2) { auto now = itr1; while(now=0; i--) #define popcount __builtin_popcount const ll LLINF = pow(2,61)-1; const ll INF = pow(2,30)-1; ll gcd(ll a, ll b) { if (a> n; ll r[n]; rep(i,n) cin >> r[i]; ll g[n]; rep(i,n) cin >> g[i]; ll b[n]; rep(i,n) cin >> b[i]; ll MA = 3 * pow(10,3) + 10; vector cr(MA), cg(MA), cb(MA); rep(i,n) { cr[r[i]]++; cb[b[i]]++; cg[g[i]]++; } vector rui_cr(MA); rep(i,MA) rui_cr[i] = i==0 ? 0 : rui_cr[i-1] + cr[i]; // debug(all(rui_cr)); ll result = 0; rep(ig,MA) rep(ib,MA) { ll from = max(max(ig, ib), abs(ig-ib)+1), to = min(MA-1, ig+ib-1); result += (rui_cr[to] - rui_cr[from-1]) * cg[ig] * cb[ib]; } cout << result << endl; return 0; }