#include <bits/stdc++.h>
using namespace std;
int countOfSubarray(vector<int>& a , int x , int y){
int n = a.size();
for(int i=0;i<n;i++){
a[i] = (a[i]==x)?1:-1;
}
// for(int x:a)cout<<x<<" ";
cout<<endl;
int ans=0;
unordered_map<int,int>mpp;
mpp[0] = 1;
int prefixSum=0;
for(int i=0;i<n;i++){
prefixSum += a[i];
ans += mpp[prefixSum];
mpp[prefixSum]++;
}
return ans;
}
int main() {
int n;
cin>>n;
int x,y;
cin>>x>>y;
vector<int>a(n);
for(int i=0;i<n;i++){
cin>>a[i];
}
cout<<countOfSubarray(a,x,y);
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgY291bnRPZlN1YmFycmF5KHZlY3RvcjxpbnQ+JiBhICwgaW50IHggLCBpbnQgeSl7CglpbnQgbiA9IGEuc2l6ZSgpOwoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJYVtpXSA9IChhW2ldPT14KT8xOi0xOwoJfQoJCgkvLyBmb3IoaW50IHg6YSljb3V0PDx4PDwiICI7Cgljb3V0PDxlbmRsOwoJCglpbnQgYW5zPTA7Cgl1bm9yZGVyZWRfbWFwPGludCxpbnQ+bXBwOwoJbXBwWzBdID0gMTsKCWludCBwcmVmaXhTdW09MDsKCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCXByZWZpeFN1bSArPSBhW2ldOwoJCWFucyArPSBtcHBbcHJlZml4U3VtXTsKCQltcHBbcHJlZml4U3VtXSsrOwoJfQoJcmV0dXJuIGFuczsKfQoKaW50IG1haW4oKSB7CglpbnQgbjsKCWNpbj4+bjsKCWludCB4LHk7CgljaW4+Png+Pnk7Cgl2ZWN0b3I8aW50PmEobik7Cglmb3IoaW50IGk9MDtpPG47aSsrKXsKCQljaW4+PmFbaV07Cgl9Cgljb3V0PDxjb3VudE9mU3ViYXJyYXkoYSx4LHkpOwoJcmV0dXJuIDA7Cn0=