Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
CGJUWM - Ciąg geometryczny VS Janusz |
Janusz uczy się w szkole o ciągach geometrycznych i właśnie otrzymał kolejne zadanie od swego nauczyciela matematyki.
Ciąg geometryczny wyznaczony jest przez dwie liczby a1 oraz q. Sam ciąg jest nieskończoną sekwencją liczb: a1, a2, a3, ... Liczba a1 jest pierwszym wyrazem ciągu, natomiast q jest nazywane ilorazem ciągu. Dla każdej pary sąsiednich wyrazów ciągu spełniona jest relacja ai+1 = ai · q, dla i >= 1. Jednak nauczyciel Janusza dopuszcza, aby zarówno a1 jak i q mogły być równe zero i były tylko liczbami całkowitymi. Dodatkowo w zadaniu podany jest zestaw liczb zakazanych b1, b2, b3, ..., bm oraz pewna liczba całkowita L.
Janusz wypisuje na tablicy kolejne wyrazy ciągu (również jeśli sie powtarzają), ale tylko te, których wartość bezwzględna nie jest większa od L oraz których nie ma w zbiorze liczb zakazanych – liczby niespełniające obydwu warunków nie będą wypisywane.
Pytanie brzmi: ile liczb Janusz wypisze na tablicy? W niektórych przypadkach będzie to skończona ilość liczb (czasem nie wypisze żadnej liczby), a niekiedy wypisze nieskończoną ilość liczb. Napisz program, który znajduje odpowiedź na to pytanie.
Wejście
Pierwszy wiersz zawiera cztery liczby całkowite a1, q, L, m (–10^9 ≤ a1, q ≤ 10^9 , 1 ≤ L ≤ 10^9 , 1 ≤ m ≤ 10^5 ) — pierwszy wyraz ciagu, iloraz ciagu, ograniczenie na wartość bezwględną wyrazu ciągu oraz ilość liczb zakazanych. Drugi wiersz zawiera listę liczb zakazanych b1, b2, ..., bm (–10^9 ≤ bi ≤ 10^9 ). Liczby w wierszach oddzielone są pojedynczymi odstępami.
Wyjście
Program powinien wypisać jedną liczbę całkowitą — ilość liczb, które Janusz wypisze na tablicy, lub tekst "inf" (bez cudzysłowu), jeśli ta ilość jest nieskończona.
Example
Input:
3 2 30 4
6 14 25 48
Output:
3
Input:
123 1 2143435 4
123 11 -5453 141245
Output:
0
Input:
123 1 2143435 4
54343 -13 6 124
Output:
inf
Uwagi do przykładów:
- Wypisane zostaną liczby 3, 12 oraz 24. Liczba 6 jako zakazana zostanie pominięta.
- Nic nie zostanie wypisane, gdyż wszystkie wyrazy ciagu są równe 123, które jest liczbą zakazaną.
- Wszystkie wyrazy ciągu są równe 123, które nie jest liczbą zakazaną.
Dodane przez: | Marcin Kasprowicz |
Data dodania: | 2018-01-04 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET |