#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m;
  scanf("%d %d", &n, &m);
  vector<int> v(n);
  int index = -1;
  for (int i = 0; i < n; i++) {
    scanf("%d", &v[i]);
    if (v[i] == m) index = i;
  }
  long long resp = 1;
  map<int, int> mapa;
  int atual = 0;
  for (int i = index - 1; i >= 0; i--) {
    if (v[i] < m) {
      atual--;
    } else
      atual++;
    mapa[atual]++;
    if (atual == 0 || atual == 1) resp++;
  }
  atual = 0;
  for (int i = index + 1; i < n; i++) {
    if (v[i] < m) {
      atual--;
    } else {
      atual++;
    }
    if (atual == 0 || atual == 1) {
      resp++;
    }
    resp += (1LL) * mapa[1 - atual];
    resp += (1LL) * mapa[-atual];
  }
  printf("%lld\n", resp);
  return 0;
}
