#include<stdio.h> #include<math.h> #include<string.h> #include<stdlib.h> #include<iostream> #include<algorithm> //#include <bits/stdc++.h> using namespace std; int issu(int a) { int panduan=0; if(a==1) { panduan=1; } else if(a==2) { panduan=0; } else { for(int i=2; i<sqrt(a)+1; i++) { if(a%i==0) { panduan=1; break; } } } return panduan; } int num[1000001]= {0}; int main() { int su=0; for(int i=2; i<=1000000; i++) { if(num[i]==-1) { num[i]=su; } else { if(issu(i)==0) { su++; num[i]=su; for(int j=2*i; j<=1000000; j=j+i) { num[j]=-1; } } } } int a,b; while(scanf("%d %d",&a,&b)!=EOF) { int sum=num[b]-num[a]; if(issu(a)==0) { sum++; } printf("%d\n",sum); } } |
Double click to view unformatted code.