Laiko ribojimas: 1s

Atminties ribojimas: 64MB

Duomenų failas: lmio_1997_3e1_ciklinis_skaicius_jau.in

Rezultatų failas: lmio_1997_3e1_ciklinis_skaicius_jau.out

Jei norite pateikti savo sprendimą - prisijunkite.

Ciklinis skaičius

Natūralusis skaičius, sudarytas iš nelygių nuliui skaitmenų vadinamas cikliniu, jei jo skaitmenys tarsi generuoja seką pagal žemiau pateiktas taisykles.

Kairiausias skaičiaus skaitmuo laikomas pirmuoju sekos nariu.

Antrąjį sekos narį randame skaičiuodami pradinio skaičiaus skaitmenis į dešinę per tiek pozicijų, kokia yra pirmojo sekos nario reikšmė. Skaičiuojama ratu – pasiekus skaičiaus galą vėl pradedama nuo pradžios. Pagal antrojo sekos nario reikšmę analogiškai randamas trečiasis narys ir t. t.

Seka baigiama pasiekus kairiausiąjį skaičiaus skaitmenį (t.y. pirmąjį sekos narį). Visi skaičiaus skaitmenys turi įeiti į seką ir tik po vieną kartą.

Sakykime, turime skaičių 83441. Norėdami patikrinti, ar jis yra ciklinis skaičius, turime atlikti šiuos veiksmus:

  1. pradedame nuo kairiausio skaitmens, t. y. nuo 8: 8 3 4 4 1
  2. einame į dešinę per aštuonis skaitmenis: 8 3 4 4 1
  3. einame į dešinę per keturis skaitmenis: 8 3 4 4 1
  4. einame į dešinę per keturis skaitmenis: 8 3 4 4 1
  5. einame į dešinę per tris skaitmenis: 8 3 4 4 1
  6. paslenkame per vieną skaitmenį ir pagaliau pasiekiame pirmą skaičiaus skaitmenį, nuo kurio ir buvome pradėję: 8 3 4 4 1

Skaičiavimai baigiami. Gavomeseką 8 4 4 3 1. Kadangiduotojoskaičiausskaitmenysįeina į seką po vieną kartą, tai skaičius 83441 yra ciklinis.

Užduotis

Parašykite algoritmą, kuris patikrintų, ar duotas skaičius yra ciklinis, ir jei ne, tai reikia rasti mažiausią ciklinį skaičių, didesnį už duotąjį.

Pradiniai duomenys

Pradinis duomuo – natūralusis skaičius, turintis nuo 2 iki 8 skaitmenų imtinai.

Rezultatai

Rezultatas – mažiausias ciklinis skaičius, lygus duotajam skaičiui arba didesnis už jį.

Pavyzdžiai

Pradiniai duomenys Rezultatai
174
147
1234
1263