Laiko ribojimas: 1s
Atminties ribojimas: 64MB
Fybonačis
Jau turbūt yra tekę ne kartą susidurti su Fibonačio skaičių seka. Kaip žinia, tai yra seka, kurios pirmi du nariai yra , o kiekvienas kitas narys apskaičiuojamas pagal taisyklę .
Šiame uždavinyje nagrinėjama kita seka, kurią pavadinsime -bonačio seka. Jos nariai apibrėžiami taip:
- , jei ;
- , jei .
Galima pastebėti, kad jau aptarta Fibonačio seka yra tiesiog atskiras -bonačio sekos atvejis, kuomet bei .
Jūsų užduotis - surasti -ąjį duotos -bonačio sekos narį.
Pradinai duomenys
Pirmoje eilutėje pateikti du tarpu atskirti sveikieji skaičiai ir ().
Antroje eilutėje pateikta tarpais atskirtų sveikųjų skaičių ().
Rezultatai
Jūsų programa turi išvesti vieną sveikąjį skaičių - -ąjį apibrėžtos -bonačio sekos narį. Kadangi skaičiai gali būti labai dideli, išveskite rezultatą moduliu .
Pavyzdžiai
Pradiniai duomenys | Rezultatai |
---|---|
2 10 1 1 |
55 |
3 4 1000000000 1000000000 1000000000 |
999999986 |
4 2 1 2 3 4 |
2 |
Paaiškinimas
Pirmajame pavyzdyje apibrėžta įprastinė Fibonačio seka, kurios dešimtasis narys yra lygus 55.
Antrajame pavyzdyje ketvirtojo sekos nario reikšmė yra , tačiau atsakymą reikia išvesti moduliu , tad teisingas atsakymas yra .
Trečiajame pavyzdyje tereikia išvesti antrąjį sekos narį, kuris jau duotas ir yra lygus .