#include #include #include #include #include #include #include #include #include #include #include #include #define rep(i,j,k) for (int i = j; i <= k; i++) #define per(i,j,k) for (int i = j; i >= k; i--) const int N=500005; int prime[N],p; bool iscomp[N+1]; void primetable() { for(int i=2;i<=N;i++) { if(iscomp[i]==false) prime[p++]=i; for(int j=0;j=n) break; ans++; if(d%prime[i]==0) break; if(prime[i]*prime[i]>d) {flag=1;break;} } if(flag==0) { printf("%d\n",ans); } else { int l=0,r=p-1; while(ld||tp>=n) r=mid-1; else l=mid; } printf("%d\n",l+1); } } return 0; }