Загрузка данных


#include <iostream>
#include <vector>

using namespace std;

int sumacyfr(int n){
    int suma=0;
    while(n>0){
        suma+=n%10;
        n/=10;
    }
    return suma;
}
int sumabin(int n){
    int suma=0;
    while(n>0){
        suma+=n&1;
        n>>=1;
    }
    return suma;
}

bool czypierwsza(int x){
    if(x<2)return false;
    for(int i=2;i*i<=x;i++){
        if(x%i==0)return false;
    }
    return true;
}

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int a,b;
    if(!(cin>>a>>b)) return 0; 
    vector<bool> czypier(b+1,true);
    czypier[0]=czypier[1]=false;
    for(long long p=2;p*p<=b;p++){
        if(czypier[p]){
            for(long long i=p*p;i<=b;i+=p)
                czypier[i]=false;
        }
    }
    int licznik=0;
    for(int i=a;i<=b;i++){
        if(czypier[i]){
            if(czypierwsza(sumacyfr(i))){
                if(czypierwsza(sumabin(i))){
                    licznik++;
                }
            }
        }
    }
    cout<<licznik<<"\n";
    return 0;
}