#include using namespace std; const int MAX = 3001; int main(){ int n; cin >> n; vector r(n); for (int i = 0; i < n; i++){ cin >> r[i]; } vector g(n); for (int i = 0; i < n; i++){ cin >> g[i]; } vector b(n); for (int i = 0; i < n; i++){ cin >> b[i]; } vector rc(MAX, 0); for (int i = 0; i < n; i++){ rc[r[i]]++; } vector gc(MAX, 0); for (int i = 0; i < n; i++){ gc[g[i]]++; } sort(b.begin(), b.end()); long long ans = 0; for (int i = 0; i < MAX; i++){ for (int j = 0; j <= i; j++){ int l = upper_bound(b.begin(), b.end(), i - j) - b.begin();; int r = upper_bound(b.begin(), b.end(), i) - b.begin(); ans += (long long) rc[i] * gc[j] * (r - l); } } cout << ans << endl; }