#include <iostream>
#include <vector>
#include <math.h>
#include <algorithm>
using namespace std;
#define vi vector<int>
#define vb vector<bool>
#define vvi vector<vi>
#define vpii vector<pair<int, int>>
#define str string
#define vs vector<str>
#define lli long long int
#define vc vector<char>
#define vvc vector<vc>
int main()
{
std::ios_base::sync_with_stdio (false);
int n, k;
cin >> n >> k;
vvi piramida(n);
for (int i = 0; i < n; i++)
{
piramida[i].resize(i+1);
for (int j = 0; j <= i; j++) {
cin >> piramida[i][j];
}
}
vvi do_zdjecia(n);
for (int i = 0; i < n; i++)
{
do_zdjecia[i].resize(i+1);
}
for (int i = 0; i < n; i++)
{
for (int j = 0; j <= i; j++) {
do_zdjecia[i][j] = (j+1)*(i-j+1);
}
}
int oldest = 2020;
for (int i = 0; i < n; i++)
{
for (int j = 0; j <= i; j++) {
if (piramida[i][j] < oldest && do_zdjecia[i][j] <= k)
oldest = piramida[i][j];
}
}
cout << oldest << endl;
return 0;
}