Cześć spoj zwraca mi błąd a ja nie mam pojecia o co chodzi. Tu jest zadanie
A tu kod:
#include <iostream>
using namespace std;
int ile[1000001];
int main()
{
bool l[1000001];
for (int i = 0;i < 1000001;i++)
{
l[i] = true;
ile[i] = 0;
}
int t, p, k, s;
l[0] = false;
l[1] = false;
s = 0;
cin >> t;
for (int i = 2;i < 50000;i++) //sito eras.
{
if (l[i] == true)
{
for (int j = i * 2;j <= 1000000;j += i)
{
l[j] = false;
}
}
}
for (int j = 1;j <= 1000000;j++)//dla ile[j] przypisuje ile liczb pierwszych jest w przedziale 0 do j
{
if (l[j] == 1) s++;
ile[j] = s;
}
for (int i = 0;i < t;i++)
{
cin >> p >> k;
cout << ile[k]-ile[p] << endl;
}
return 0;
}
Dzieki za każdą odpowiedź