题目大意
给定一个整数如果这个整数的每一位都不相同的话,就说这个数叫美丽的数,
给定一个区间,求这个区间美丽数的数量
解题
前缀和试水题目,先打表,然后输出
AC代码
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int MAXN = 200008;
int f[MAXN+5];
bool check(int n)
{
int tmp[20];
memset(tmp,0,sizeof tmp);
while(n)
{
int t = n%10;
n/=10;
tmp[t]++;
if(tmp[t]>1)
return false;
}
return true;
}
int main()
{
for(int i=1;i<=MAXN;i++)
if(check(i))
f[i] = f[i-1] + 1;
else
f[i] = f[i-1];
int t;
int left,right;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&left,&right);
printf("%d\n",f[right]-f[left-1]);
}
return 0;
}