func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxn = 300005;   int N, K, val[maxn], prime[30000], cnt, limit, ans;   bool del[maxn];   void pre() {     for (int i = 2; i <= N; i++) {       if (!val[i]) prime[++cnt] = i;       val[i]++;       for (int j = i + i; j <= N; j += i) val[j]++;     }   }   int main() {     scanf( %d%d , &N, &K);     pre();     long long tot = 0;     for (int i = 1; i <= N; i++) {       tot += val[i];       if (tot >= K) {         ans = limit = i;         break;       }     }     if (tot > K)       for (int i = 1; i <= cnt; i++) {         if (tot == K) break;         if (tot - K >= limit / prime[i]) {           del[prime[i]] = 1;           tot -= limit / prime[i];           ans--;         }       }     if (tot != K)       printf( No n );     else {       printf( Yes n );       printf( %d n , ans);       for (int i = 1; i <= limit; i++)         if (!del[i]) printf( %d  , i);       puts(  );     }     return 0;   }   