#include #include #include using namespace std; const int primes[4] = {2, 3, 5, 7}; bool viz[4]; vector v; void bkt(int nr) { v.push_back(nr); if(nr / 1000) { return; } for(int i = 0; i < 4; i++) { if(!viz[i]) { viz[i] = true; bkt(nr * 10 + primes[i]); viz[i] = false; } } } int main() { bkt(0); sort(v.begin(), v.end()); int a, b; cin >> a >> b; cout << (upper_bound(v.begin(), v.end(), b) - v.begin() - 1) - (lower_bound(v.begin(), v.end(), a) - v.begin() - 1); return 0; }