#include<bits/stdc++.h>
using namespace std;
long long a,b;
long long t[10]={0};
bool isp(long long k){
long long x=k;
long long z=1;
long long t[10]={0};
while(x!=0){
t[x%10]++;
x/=10;
}
if(t[0]>0) return false;
if(t[9]>0){
z*=9;
}else{
if(t[3]>0 || t[6]>0) z*=3;
}
if(t[8]>0){
z*=8;
}else{
if(t[4]>0){
z*=4;
}else{
if(t[2]>0 || t[6]>0){
z*=2;
}
}
}
if(t[7]>0) z*=7;
if(t[5]>0) z*=5;
if(k%z!=0) return false;
return true;
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
long long p=0;
cin>>a>>b;
for(long long i=a; i<=b; i++){
if(isp(i)==true) p++;
}
cout<<p;
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #include<bits/stdc++.h> using namespace std; long long a,b; long long t[10]={0}; bool isp(long long k){ long long x=k; long long z=1; long long t[10]={0}; while(x!=0){ t[x%10]++; x/=10; } if(t[0]>0) return false; if(t[9]>0){ z*=9; }else{ if(t[3]>0 || t[6]>0) z*=3; } if(t[8]>0){ z*=8; }else{ if(t[4]>0){ z*=4; }else{ if(t[2]>0 || t[6]>0){ z*=2; } } } if(t[7]>0) z*=7; if(t[5]>0) z*=5; if(k%z!=0) return false; return true; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); long long p=0; cin>>a>>b; for(long long i=a; i<=b; i++){ if(isp(i)==true) p++; } cout<<p; return 0; } |
English