#include <bits/stdc++.h>
using namespace std;
const long long mod = 1000000007;
long long get(long long n) { return n * (n + 1) / 2; }
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout << fixed << setprecision(9);
  long long n, k;
  cin >> n >> k;
  vector<long long> a(n + 10);
  for (long long i = 1; i <= n; ++i) {
    cin >> a[i];
  }
  const long long maxn = 1e6 + 10;
  vector<long long> pre(maxn);
  for (long long i = 0; i < maxn; ++i) {
    pre[i] = get(i);
  }
  long long index = lower_bound(pre.begin(), pre.end(), k) - pre.begin();
  cerr << "index"
          " = "
       << (index) << "\n";
  ;
  cerr << "k - pre[index]"
          " = "
       << (k - pre[index]) << "\n";
  ;
  if (k == pre[index]) {
    cout << a[index] << "\n";
  } else {
    long long start = index;
    long long end = index + 1;
    k -= pre[start - 1];
    cerr << "k"
            " = "
         << (k) << "\n";
    ;
    cerr << "end"
            " = "
         << (end) << "\n";
    ;
    for (long long i = 1; i <= end; ++i) {
      --k;
      if (k == 0) cout << a[i] << "\n";
    }
  }
  return 0;
}
