#include<bits/stdc++.h>
#define int long long
using namespace std;
inline int read(){
short f=1;int x=0;char c=getchar();
while(c<'0'||c>'9'){if(c=='-')f=-1;c=getchar();}
while(c>='0'&&c<='9'){x=(x<<3)+(x<<1)+(c^48);c=getchar();}
return x*f;
}
const int maxn=2e6,maxm=2e9;
int n,m;
int a[maxn+5];
signed main(){
n=read(),m=read();
for(int i=1;i<=n;i++){
a[i]=read();
}
a[n+1]=maxm;
sort(a+1,a+n+2);
if(a[1]!=1) return printf("No answer!!!"),0;
int sum=0,ans=0;
for(int i=1;i<=n;i++){
while(sum<a[i+1]-1){
sum+=a[i];
ans++;
if(sum>=m) return printf("%lld",ans),0;
}
}
return printf("%lld",ans+1),0;
}
https://www.luogu.com.cn/record/list?pid=P2001&user=577683