小明和小慧吵架了,小明想见小慧并要求得到谅解。小慧给了小明两个数m和n(1<m<1000 和 m<n<2000 ),在m到n之间的素数中(范围包括m和n),相邻两个素数差的最大值就是小慧决定不见小明的天数,小明非常想知道几天后才能见到小慧,聪明的你帮帮小明吗?
题目描写小明和小慧吵架了,小明想见小慧并要求得到谅解。小慧给了小明两个数m和n(1<m<1000 和 m<n<2000 ),在m到n之间的素数中(范围包括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;;
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |