算法
要么直接跳过去,要么就用最大步长跳
C++ 代码
#include<iostream>
using namespace std;
typedef long long ll;
void solve()
{
ll n,x;
cin >> n >> x;
ll mx = 0;
bool flag = false;
while(n--)
{
ll l;
cin >> l;
if(l==x)
flag = true;
mx = max(mx,l);
}
if(flag)
{
cout << 1 <<endl;
return;
}
ll ans = x / mx;
if(x % mx)
ans++;
if(x < mx)
ans++;
cout <<ans <<endl;
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
int t;
cin >> t;
while(t--)
solve();
return 0;
}