Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

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:

  1. Wypisane zostaną liczby 3, 12 oraz 24. Liczba 6 jako zakazana zostanie pominięta.
  2. Nic nie zostanie wypisane, gdyż wszystkie wyrazy ciagu są równe 123, które jest liczbą zakazaną.
  3. 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łowego50000B
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

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.