Unele numere naturale sunt formate doar din cifre distincte nenule. Dintre acestea, unele, numite numere circulare, au următoarea proprietate: pornind de la prima cifră şi numărând spre dreapta, după cifră, atâtea cifre cât indică aceasta, se determină o nouă cifră. Procedând la fel şi pentru aceasta şi pentru toate cele care urmează se va ajunge din nou la prima cifră. Dacă toate cifrele au fost vizitate exact o dată, numărul se numeşte circular.
De exemplu numărul este număr circular deoarece:
- are numai cifre distincte
- nu conţine cifra
- pornind de la obţinem, pe rând:
Cerință
Scrieţi un program care,pentru un dat, determină câte numere circulare sunt mai mici sau egale cu , precum şi cel mai mare număr circular mai mic sau egal cu .
Date de intrare
Pe prima linie a fişierului de intrare circular.in
se află numărul natural .
Date de ieșire
Fişierul de ieşire circular.out
conţine o singură linie, pe care se află numărul de numere circulare mai mici ca precum şi numărul circular maxim cerut, separate printr-un spaţiu.
Dacă nu există nici un număr circular mai mic ca , în fişierul de ieşire se vor afişa două valori separate printr-un spaţiu.
Restricții și precizări
Exemplu
circular.in
1894250
circular.out
347 1849625
Explicație
Există numere circulare mai mici ca cel mai mare dintre acestea fiind