#include <bits/stdc++.h>
using namespace std;

int main()
{
    long long n, H;
    cin >> n >> H;

    long long mx = 0, second = 0;
    int cnt = 0;

    for (int i = 1; i <= n; i++)
    {
        long long x;
        cin >> x;

        if (x > mx)
        {
            second = mx;
            mx = x;
            cnt = 1;
        }
        else if (x == mx)
        {
            cnt++;
        }
        else if (x > second)
        {
            second = x;
        }
    }

    if (cnt >= 2)
    {
        cout << (H + mx - 1) / mx;
        return 0;
    }

    long long l = 1;
    long long r = 2 * H / (mx + second) + 2;

    while (l < r)
    {
        long long mid = (l + r) / 2;

        long long damage =
            ((mid + 1) / 2) * mx
            + (mid / 2) * second;

        if (damage >= H)
        {
            r = mid;
        }
        else
        {
            l = mid + 1;
        }
    }

    cout << l;

    return 0;
}