1
已解决
祝明朗
初级光能
初级光能
#include <iostream> #include <cstring> #include <cmath> using namespace std; int main() { long long int n,bz=0,sum=0; long long int m; cin>>n>>m; for(int i=n+1;i<=m-1;i++) { for(int j=2;j<=sqrt(i);j++) { if(i%j==0) bz=1; } if(bz==0) { sum++; } bz=0; } cout<<sum<<endl; }
http://judge.codingtang.com/problem/1586/
30,求解
2
已采纳
贾文卓
高级光能
高级光能
首先,区间[x,y)表示的是>=x且<y,你的理解有问题。
然后,中间的判断素数,如果找到因数了,就应该直接退出当前循环(break),可以节省时间。
但是就是这样也只有40分(TLE,超时),所以建议先打牢基础再来做这道题。
0
杨舰中
高级守护
高级守护
for (int i=0; i<=1000000; i++) {
bool f=true;
for (int j=1; j<=n; j++) {
if (i%a[j]!=r[j]) {
f=false;
break;
}
}
if (f==true) {
fa=false; cout<<i<<endl; break;
}
}
0