题目描写
小明和小慧吵架了,小明想见小慧并要求得到谅解。小慧给了小明两个数m和n(1<m<1000 和 m<n<2000 ),在m到n之间的素数中(范围包括m和n),相邻两个素数差的最大值就是小慧决定不见小明的天数,小明非常想知道几天后才能见到小慧,聪明的你帮帮小明吗?
输入
输出
样例输入
10 30
样例输出
6
提示
10和30之间的素数有 11 13 17 19 23 29 ,相邻两个素数差的最大值是29⑵3 = 6
解答
#include <iostream>
using namespace std;
bool is(int n)
{
int m=0,i;
for(i=1; i<n; i++)
if(n%i==0)
m++;
if(m==1)
return true;
else
return false;
}
int main()
{
int a,b,m[1000],i,n=0,max=0;
cin>>a>>b;
for(i=a; i<=b; i++)
if(is(i))
{
m[n++]=i;
}
for(i=0; i<n⑴; i++)
{
if(m[i+1]-m[i]>max)
max=m[i+1]-m[i];
}
cout<<max;;
}