Submission
Status:
(PPPP)(PPP)(PPP)
Subtask/Task Score:
{40/40}{30/30}{30/30}
Score: 100
User: Bestzu
Problemset: Twin, Cousin, and Sexy Prime
Language: cpp
Time: 0.333 second
Submitted On: 2025-10-17 09:15:52
#include <bits/stdc++.h>
#define endl '\n'
using namespace std;
using ll = long long;
const int N = 70000001;
vector<bool> isprime(N, true);
void sieve(int r) {
isprime[0] = isprime[1] = false;
for(int i = 2; i * i <= r; i++) {
if(isprime[i]) {
for(ll j = 1LL * i * i; j <= r; j += i) {
isprime[j] = false;
}
}
}
}
int main() {
ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
int l, r;
cin >> l >> r;
sieve(r + 10);
int t, c, s;
t = c = s = 0;
for(int i = l; i <= r; i++) {
if(isprime[i]) {
if((isprime[i-2] || isprime[i+2])) t++;
if((i-4 >= 0 && isprime[i-4]) || isprime[i+4]) c++;
if((i-6 >= 0 && isprime[i-6]) || isprime[i+6]) s++;
}
}
cout << t << endl << c << endl << s;
return 0;
}