 # UNINUM-Editorial

DIFFICULTY: Cake-walk
PREREQUISITES: Nothing
EXPLANATION:
We just have to iterate from r to l (both inclusive) and find the value of (r-i)*(i-l) and keep track of maximum of this value and for which number it is maximum.
SOLUTION:
(Python 3)

```def check(i):
d={}
for j in str(i):
if j not in d:
d[j]=1
else:
return False
return True

l,r=map(int,input().split())
m=-1
ind=-1
for i in range(r,l-1,-1):
if check(i) and (r-i)*(i-l)>m:
m=(r-i)*(i-l)
ind=i
print(ind)
```

what is wrong with the following code can anybody tell.Always one test case is failing I cant understand which one.
#include<bits/stdc++.h>
#define llt long long int
#define ullt unsigned long long int
using namespace std;
void fast(){
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
}
int check(int x)
{
int arr={0};
while(x>0)
{
int u=x%10;
arr[u]++;
if(arr[u]>1)
return 0;
x=x/10;
}
return 1;
}
int main()
{
fast();
int largest=0,ar=0,ans=-1;
//cin>>t;
int l,r;
cin>>l>>r;
for(int i=l;i<=r;i++)
{
if(check(i))
{
ar=(r-i)*(i-l);
if(ar>=largest){
largest=ar;
ans=i;}
}
}
cout<<ans;

}

Thanks  