#include <bits/stdc++.h>
using namespace std;
void executeTime() {
cerr << "Time Taken: " << (float)clock() / CLOCKS_PER_SEC << " secs";
}
int main() {
int n, x, y, w, b, z;
cin >> n >> x >> y >> w >> b >> z;
vector<int> v(n);
for (auto &x : v) {
cin >> x;
}
map<array<int, 4>, int> freq;
freq[ {0, 0, 0, 0}] = 1;
int c1 = 0, c2 = 0, c3 = 0, c4 = 0, c5 = 0;
int ans = 0;
for (int j = 0; j < n; j++) {
if (v[j] == x) c1++;
else if (v[j] == y) c2++;
else if (v[j] == z) c3++;
else if (v[j] == b) c4++;
else c5++;
int d1 = c1 - c2, d2 = c3 - c4, d3 = c4 - c5, d4 = c1 - c5;
ans += freq[ {d1, d2, d3, d4}];
freq[ {d1, d2, d3, d4}]++;
}
cout << ans << endl;
executeTime();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIGV4ZWN1dGVUaW1lKCkgewogICAgY2VyciA8PCAiVGltZSBUYWtlbjogIiA8PCAoZmxvYXQpY2xvY2soKSAvIENMT0NLU19QRVJfU0VDIDw8ICIgc2VjcyI7Cn0KCmludCBtYWluKCkgewoKICAgIGludCBuLCB4LCB5LCB3LCBiLCB6OwogICAgY2luID4+IG4gPj4geCA+PiB5ID4+IHcgPj4gYiA+PiB6OwoKICAgIHZlY3RvcjxpbnQ+IHYobik7CiAgICBmb3IgKGF1dG8gJnggOiB2KSB7CiAgICAgICAgY2luID4+IHg7CiAgICB9CgoKICAgIG1hcDxhcnJheTxpbnQsIDQ+LCBpbnQ+IGZyZXE7CgogICAgZnJlcVsgezAsIDAsIDAsIDB9XSA9IDE7CgogICAgaW50IGMxID0gMCwgYzIgPSAwLCBjMyA9IDAsIGM0ID0gMCwgYzUgPSAwOwogICAgaW50IGFucyA9IDA7CgogICAgZm9yIChpbnQgaiA9IDA7IGogPCBuOyBqKyspIHsKICAgICAgICBpZiAodltqXSA9PSB4KSBjMSsrOwogICAgICAgIGVsc2UgaWYgKHZbal0gPT0geSkgYzIrKzsKICAgICAgICBlbHNlIGlmICh2W2pdID09IHopIGMzKys7CiAgICAgICAgZWxzZSBpZiAodltqXSA9PSBiKSBjNCsrOwogICAgICAgIGVsc2UgYzUrKzsKCiAgICAgICAgaW50IGQxID0gYzEgLSBjMiwgZDIgPSBjMyAtIGM0LCBkMyA9IGM0IC0gYzUsIGQ0ID0gYzEgLSBjNTsKCiAgICAgICAgYW5zICs9IGZyZXFbIHtkMSwgZDIsIGQzLCBkNH1dOwogICAgICAgIGZyZXFbIHtkMSwgZDIsIGQzLCBkNH1dKys7CiAgICB9CgogICAgY291dCA8PCBhbnMgPDwgZW5kbDsKCiAgICBleGVjdXRlVGltZSgpOwogICAgcmV0dXJuIDA7Cn0=