1013 数素数
令P~i~表示第i个素数。现任给两个正整数M <= N <= 10^4^,请输出P~M~到P~N~的所有素数。
输入格式:
输入在一行中给出M和N,其间以空格分隔。
输出格式:
输出从P~M~到P~N~的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入样例:
5 27
输出样例:
11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103 题解:这道题其实就是打素数表,输出P~M~到P~N~的所有素数,要注意格式问题,第一次提交格式有误有两个测试点没过。 代码如下:
1 #include2 #include 3 4 using namespace std; 5 6 bool f( int n) 7 { 8 if( n==1||n==0) 9 return false;10 if( n == 2)11 return true;12 for( int i = 2; i <=sqrt(n); i++)13 if( n%i == 0)14 return false;15 return true;16 }17 18 int main()19 {20 int m,n,k = 0,i = 2,num = 0;21 cin>>m>>n;22 while(k < m - 1)23 {24 if(f(i))25 k++;26 i++;27 }28 while(k < n)29 {30 if(f(i))31 {32 if(!num)33 num = 1;34 else35 cout<<" "; 36 k++;37 cout<