package main import ( "fmt" "bufio" "os" ) func main() { r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() MAX := 3001 cnt_r := make([]int, MAX) cnt_g := make([]int, MAX) cnt_b := make([]int, MAX) var n int fmt.Fscan(r, &n) for i := 0; i < n; i++ { var x int fmt.Fscan(r, &x) cnt_r[x]++ } for i := 0; i < n; i++ { var x int fmt.Fscan(r, &x) cnt_g[x]++ } for i := 0; i < n; i++ { var x int fmt.Fscan(r, &x) cnt_b[x]++ } for i := 1; i < MAX; i++ { cnt_r[i] += cnt_r[i-1] cnt_g[i] += cnt_g[i-1] cnt_b[i] += cnt_b[i-1] } cnt := 0 for a := 1; a < MAX; a++ { if cnt_r[a] == cnt_r[a-1] { continue } rn := cnt_r[a] - cnt_r[a-1] for j := 1; j <= a; j++ { gn := cnt_g[j] - cnt_g[j-1] bn := cnt_b[a] - cnt_b[a-j] cnt += rn * gn * bn } } fmt.Fprintln(w, cnt) }