#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //eolibraries #define lnf 3999999999999999999 #define inf 999999999 #define fi first #define se second #define pb push_back #define ll long long #define ld long double #define all(c) (c).begin(),(c).end() #define sz(c) (int)(c).size() #define make_unique(a) sort(all(a)),a.erase(unique(all(a)),a.end()); #define rep(i,n) for(int i=0;i=0;i--) #define crep(i,x,n) for(int i=x;i #define _3kynfAJ ios_base::sync_with_stdio(false),cin.tie(0),cout.tie(0) //eodefine using namespace std; using pii=pair; using vi=vec(int); const int mxn=7000002; vec(vec(pii)) prmfct; vi prm; void fdprm(int nupto) { //glblhere // //glblhere prmfct.clear(); prmfct.resize(nupto+3,vec(pii)()); prm.resize(nupto+3,0); crep(i,2,sqrt(nupto)+1){ if(prm[i]==0){ for(int j=i*i;j<=nupto;j+=i) prm[j] = i; } } crep(i,2,nupto+1) if(prm[i]==0) prm[i]=i; // crep(i,2,nupto+1){ // int x=i,y=0,pup=0,cnt=0; // while(x!=1) { // y=prm[x],pup=y; // if(y==0) break; // cnt=0; // while(y!=0 and x%y==0) {x/=y;cnt++;} // prmfct[i].pb({pup,cnt}); // } // } } int main(){ _3kynfAJ; fdprm(mxn); int a,b; cin>>a>>b; int ans=0; crep(x,a,b+1){ int s=0; // cout<b) break; s+=j; if(prm[s]==s){ ans=ans+1; } } } cout<