#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define popcount __builtin_popcount using namespace std; using namespace atcoder; typedef long long ll; typedef pair P; int main() { int n, k; cin>>n>>k; const int INF=1e9; int dp[19][200020]; for(int i=0; i<19; i++) fill(dp[i],dp[i]+n+1,INF); dp[0][1]=0; for(int i=1; i<=n; i++){ for(int j=0; j<19; j++){ if(2*i<=n && j+1<19){ dp[j+1][2*i]=min(dp[j+1][2*i], dp[j][i]); } if(i+3<=n){ dp[j][i+3]=min(dp[j][i+3],dp[j][i]+1); } } } int mn=INF; for(int i=0; i<19; i++){ mn=min(mn,i+dp[i][n]); } if(mn<=k) cout<<"YES"<