Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

PNUMBER - Tìm số nguyên tố




Hãy tìm tất cả các số nguyên tố trong đoạn [A,B] .

Input

Gồm 2 số nguyên A và B cách nhau bởi 1 dấu cách ( 1 ≤ A ≤ B ≤ 200000 ) .

Output

Ghi ra tất cả các số nguyên tố trong khoảng [A,B]. Mỗi số trên 1 dòng .

Ví dụ

Input:
1 10

Output:
2
3
5
7

Được gửi lên bởi:Nguyen Minh Hieu
Ngày:2007-09-17
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ERL GOSU JS-RHINO NODEJS PERL6 PYPY RUST SED VB.NET
Nguồn bài:Dân gian

hide comments
2021-05-27 18:03:01
Tham khảo: https://vnspoj.github.io/problems/PNUMBER
2019-10-30 14:10:45
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;


int main(){
ll n = 0;
ll l,r;
cin >> l >> r;
bool isPrime[r - l + 2]; //filled by true
for (ll i = 2; i <= r-l+2; i++) isPrime[i] = true;

for (long long i = 2; i * i <= r; ++i) {
for (long long j = max(i * i, (l + (i - 1))/(i*i)); j <= r; j += i) {
isPrime[j - l] = false;
}
}
for (long long i = max(ll(2),l); i <= r; ++i) {
if (isPrime[i - l]) {
cout << i << endl;
//n++;
}
}
//cout << n;
return 0;
}

hic code đúng mà :((
2019-05-01 14:55:06
Không sàng cũng AC
2018-05-24 16:49:11
sàng nguyên tố thì mất thời gian ...... mọi người nên kiểm tra theo kiểu 6k+1 và 6k-1
2018-05-14 12:10:24
#include <iostream>
#include<math.h>
using namespace std;

int Nguyento(int n) {
for (int i = 2; i <= sqrt(n); i++)
{
if (n%i == 0) return 0;
}
return 1;
}

int main() {

// your code here
int a, b, min, max;

cin >> a >> b;

if (a <= b) { min = a; max = b; }
else { min = b; max = a; }

for (int i = min; i <= max; i++)
{
if (Nguyento(i)) cout << i << endl;
}
return 0;
}
=> Sai đâu thế anh em :'(
2018-04-28 14:29:30
Xem lời giải:
https://vietcodes.github.io/code/139/
2018-03-29 16:04:37
Sàng nguyên tố
2018-03-28 10:36:38
why it not working

#include <stdio.h>

main()
{
int A,B,i,j;
bool nt[200000];

scanf("%i %i",&A,&B);


for(i=2; i*i<=B ;i++)

if (nt[i]==false)
{
for(j=2*i;j<=B;j=j+i)
nt[j]=true;
}


for(i=2;i<=B;i++)
if ((nt[i]==false)&&(i<=B)&&(i>=A))
printf("%i\n",i);


}
2018-03-04 16:03:03
code chuẩn:
#include<bits/stdc++.h>
using namespace std;
int a,b;
//---------------------
bool nt(int n)
{
if(n<2) return false;
for(int i=2;i<=trunc(sqrt(n));i++)
if(n%i==0) return false;
return true;
}
//---------------------
int main()
{
cin>>a>>b;
for(int i=a;i<=b;i++)
if(nt(i)) cout<<i<<endl;
}
2017-11-18 12:50:50
test chấm bị sai rồi!
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.